pyiqa.archs.tres_arch ===================== .. py:module:: pyiqa.archs.tres_arch .. autoapi-nested-parse:: TReS model. Reference: No-Reference Image Quality Assessment via Transformers, Relative Ranking, and Self-Consistency. S. Alireza Golestaneh, Saba Dadsetan, Kris M. Kitani WACV2022 Official code: https://github.com/isalirezag/TReS Module Contents --------------- .. py:data:: default_model_urls .. py:class:: Transformer(d_model=256, nhead=8, num_encoder_layers=6, num_decoder_layers=6, dim_feedforward=2048, dropout=0.1, activation='relu', normalize_before=False, return_intermediate_dec=False) Bases: :py:obj:`torch.nn.Module` .. py:method:: forward(src, pos_embed) .. py:class:: TransformerEncoder(encoder_layer, num_layers, norm=None) Bases: :py:obj:`torch.nn.Module` .. py:method:: forward(src, mask: Optional[torch.Tensor] = None, src_key_padding_mask: Optional[torch.Tensor] = None, pos: Optional[torch.Tensor] = None) .. py:class:: TransformerEncoderLayer(d_model, nhead, dim_feedforward=2048, dropout=0.1, activation='relu', normalize_before=False) Bases: :py:obj:`torch.nn.Module` .. py:method:: with_pos_embed(tensor, pos: Optional[torch.Tensor]) .. py:method:: forward_post(src, src_mask: Optional[torch.Tensor] = None, src_key_padding_mask: Optional[torch.Tensor] = None, pos: Optional[torch.Tensor] = None) .. py:method:: forward_pre(src, src_mask: Optional[torch.Tensor] = None, src_key_padding_mask: Optional[torch.Tensor] = None, pos: Optional[torch.Tensor] = None) .. py:method:: forward(src, src_mask: Optional[torch.Tensor] = None, src_key_padding_mask: Optional[torch.Tensor] = None, pos: Optional[torch.Tensor] = None) .. py:class:: PositionEmbeddingSine(num_pos_feats=64, temperature=10000, normalize=False, scale=None) Bases: :py:obj:`torch.nn.Module` This is a more standard version of the position embedding, very similar to the one used by the Attention is all you need paper, generalized to work on images. .. py:method:: forward(tensor_val) .. py:class:: L2pooling(filter_size=5, stride=1, channels=None, pad_off=0) Bases: :py:obj:`torch.nn.Module` .. py:method:: forward(input) .. py:class:: TReS(network='resnet50', train_dataset='koniq', nheadt=16, num_encoder_layerst=2, dim_feedforwardt=64, test_sample=50, default_mean=[0.485, 0.456, 0.406], default_std=[0.229, 0.224, 0.225], pretrained=True, pretrained_model_path=None) Bases: :py:obj:`torch.nn.Module` .. py:method:: forward_backbone(model, x) .. py:method:: forward(x)