class_docstr: A wrapper for ALE emulator, with configurations to mimic DeepMind DQN settings.
  
  Info:
      score: the accumulated reward in the current game
      gameOver: True when the current game is Over
class_docstr_tok: ["A","wrapper","for","ALE","emulator",",","with","configurations","to","mimic","DeepMind","DQN","settings",".","Info",":","score",":","the","accumulated","reward","in","the","current","game","gameOver",":","True","when","the","current","game","is","Over"]
docstr: :returns: a gray-scale (h, w) uint8 image
docstr_tok: [":","returns",":","a","gray-scale","(","h",",","w",")","uint8","image"]
code: def _current_state(self):
      """
      :returns: a gray-scale (h, w) uint8 image
      """
      ret = self._grab_raw_image()
      # max-pooled over the last screen
      ret = np.maximum(ret, self.last_raw_screen)
      if self.viz:
          if isinstance(self.viz, float):
              cv2.imshow(self.windowname, ret)
              cv2.waitKey(int(self.viz * 1000))
      if self.grayscale:
          # 0.299,0.587.0.114. same as rgb2y in torch/image
          ret = cv2.cvtColor(ret, cv2.COLOR_RGB2GRAY)
      return ret.astype("uint8")
  
file_path: tensorpack/examples/DeepQNetwork/atari.py
imports: import numpy
  import os
  import threading
  import cv2
  import gym
  import six
  from ale_py import ALEInterface, Action, LoggerMode
  from gym import spaces
  from tensorpack.utils import logger, execute_only_once, get_rng
  from tensorpack.utils.fs import get_dataset_path
label_desc: Use image node_id 4 for calling the AtariPlayer obj's underlying member method code with example usage: obj._current_state() and returns: ret