class_docstr: Image to Patch Embedding
      
class_docstr_tok: ["Image","to","Patch","Embedding"]
code: def forward(self, x):
      B, C, H, W = x.shape
      # FIXME look at relaxing size constraints
      _assert(
          H == self.img_size[0],
          f"Input image size ({H}*{W}) doesn't match model ({self.img_size[0]}*{self.img_size[1]}).",
      )
      _assert(
          W == self.img_size[1],
          f"Input image size ({H}*{W}) doesn't match model ({self.img_size[0]}*{self.img_size[1]}).",
      )
      x = self.proj(x).flatten(2).transpose(1, 2)
      return x
  
imports: from functools import partial
  from typing import List
  from typing import Tuple
  import torch
  import torch.hub
  import torch.nn
  from timm.data import IMAGENET_DEFAULT_MEAN, IMAGENET_DEFAULT_STD
  from timm.layers import DropPath, to_2tuple, trunc_normal_, _assert
  from ._builder import build_model_with_cfg
  from ._features_fx import register_notrace_function
  from ._registry import register_model, generate_default_cfgs
  from .vision_transformer import Block
label_desc: Use image node_id 2 for calling the PatchEmbed obj's underlying member method code with example usage: obj.forward(x) and returns: x