code: def compute_output_spec(self, image):
      image_shape = image.shape
      if not self.strides:
          strides = (self.size[0], self.size[1])
      if self.data_format == "channels_last":
          channels_in = image.shape[-1]
      else:
          channels_in = image.shape[-3]
      if len(image.shape) == 3:
          image_shape = (1,) + image_shape
      filters = self.size[0] * self.size[1] * channels_in
      kernel_size = (self.size[0], self.size[1])
      out_shape = compute_conv_output_shape(
          image_shape,
          filters,
          kernel_size,
          strides=strides,
          padding=self.padding,
          data_format=self.data_format,
          dilation_rate=self.dilation_rate,
      )
      if len(image.shape) == 3:
          out_shape = out_shape[1:]
      return KerasTensor(shape=out_shape, dtype=image.dtype)
  
imports: from keras import backend
  from keras import ops
  from keras.api_export import keras_export
  from keras.backend import KerasTensor
  from keras.backend import any_symbolic_tensors
  from keras.ops.operation import Operation
  from keras.ops.operation_utils import compute_conv_output_shape
label_desc: Use image node_id 3 for calling the ExtractPatches obj's underlying member method code with example usage: obj.compute_output_spec(image) and returns: KerasTensor