docstr: Stack k last frames.
  
  Returns lazy array, which is much more memory efficient.
  
  See Also
  --------
  baselines.common.atari_wrappers.LazyFrames
docstr_tok: ["Stack","k","last","frames",".","Returns","lazy","array",",","which","is","much","more","memory","efficient",".","See","Also","--","--","--","--","baselines.common.atari_wrappers.LazyFrames"]
code: def __init__(self, env, k):
      """Stack k last frames.
  
      Returns lazy array, which is much more memory efficient.
  
      See Also
      --------
      baselines.common.atari_wrappers.LazyFrames
      """
      gym.Wrapper.__init__(self, env)
      self.k = k
      self.frames = deque([], maxlen=k)
      shp = env.observation_space.shape
      self.observation_space = spaces.Box(
          low=0,
          high=255,
          shape=(shp[:-1] + (shp[-1] * k,)),
          dtype=env.observation_space.dtype,
      )
  
imports: import numpy
  import os
  from collections import deque
  import gym
  from gym import spaces
  import cv2
  from .wrappers import TimeLimit
label_desc: Use image node_id 1 to create a new FrameStack object from inherited base classes: gym with example: obj = FrameStack(env, k)