class_docstr: Divide frame values by 255.0 and return them as np.float32.
  
  Especially, when the original env.observation_space is np.uint8,
  this wrapper converts frame values into [0.0, 1.0] of dtype np.float32.
class_docstr_tok: ["Divide","frame","values","by","255.0","and","return","them","as","np.float32",".","Especially",",","when","the","original","env.observation_space","is","np.uint8",",","this","wrapper","converts","frame","values","into","[","0.0",",","1.0","]","of","dtype","np.float32","."]
code: def __init__(self, env):
      assert isinstance(env.observation_space, spaces.Box)
      gym.ObservationWrapper.__init__(self, env)
  
      self.scale = 255.0
  
      orig_obs_space = env.observation_space
      self.observation_space = spaces.Box(
          low=self.observation(orig_obs_space.low),
          high=self.observation(orig_obs_space.high),
          dtype=np.float32,
      )
  
imports: from collections import deque
  import gym
  import numpy
  from gym import spaces
  from packaging import version
  import pfrl
label_desc: Use image node_id 1 to create a new ScaledFloatFrame object from inherited base classes: gym with example: obj = ScaledFloatFrame(env)