def read_bands(self, rlevel=<NUM_LIT:0>, layer=None, area=None, tile=None,<EOL>verbose=False, ignore_pclr_cmap_cdef=False):
if version.openjpeg_version < '<STR_LIT>':<EOL><INDENT>msg = ("<STR_LIT>"<EOL>"<STR_LIT>"<EOL>"<STR_LIT>")<EOL>msg = msg.format(version=version.openjpeg_version)<EOL>raise IOError(msg)<EOL><DEDENT>self.ignore_pclr_cmap_cdef = ignore_pclr_cmap_cdef<EOL>self.layer = layer<EOL>self._populate_dparams(rlevel, tile=tile, area=area)<EOL>lst = self._read_openjp2_common()<EOL>return lst<EOL>
Read a JPEG 2000 image.

        The only time you should use this method is when the image has
        different subsampling factors across components.  Otherwise you should
        use the read method.

        Parameters
        ----------
        layer : int, optional
            Number of quality layer to decode.
        rlevel : int, optional
            Factor by which to rlevel output resolution.
        area : tuple, optional
            Specifies decoding image area,
            (first_row, first_col, last_row, last_col)
        tile : int, optional
            Number of tile to decode.
        ignore_pclr_cmap_cdef : bool
            Whether or not to ignore the pclr, cmap, or cdef boxes during any
            color transformation.  Defaults to False.
        verbose : bool, optional
            Print informational messages produced by the OpenJPEG library.

        Returns
        -------
        list
            List of the individual image components.

        See also
        --------
        read : read JPEG 2000 image

        Examples
        --------
        >>> import glymur
        >>> jfile = glymur.data.nemo()
        >>> jp = glymur.Jp2k(jfile)
        >>> components_lst = jp.read_bands(rlevel=1)