class_docstr: Produce images read from a list of files as (h, w, c) arrays. 
code: def __iter__(self):
      if self.shuffle:
          self.rng.shuffle(self.files)
      for f in self.files:
          im = cv2.imread(f, self.imread_mode)
          assert im is not None, f
          if self.channel == 3:
              im = im[:, :, ::-1]
          if self.resize is not None:
              im = cv2.resize(im, tuple(self.resize[::-1]))
          if self.channel == 1:
              im = im[:, :, np.newaxis]
          yield [im]
  
imports: import copy
  import numpy
  from contextlib import contextmanager
  from ..utils import logger
  from ..utils.argtools import shape2d
  from .base import RNGDataFlow
  from .common import MapData, MapDataComponent
label_desc: Use image node_id 3 for calling the ImageFromFile obj's underlying member method code with example usage: obj.__iter__() without return types