public byte[] extract() {
        List<Byte> bitData = new ArrayList<Byte>();
        // 获得Y的colorid
        Integer colorid = (Integer) mImg.getColorIDs().toArray()[0];
        // 获得Y的color unit
        JPEGDataUnits dataUnits = mImg.getDataUnits();
        List<int[]> YUnits = dataUnits.getColorUnit(colorid);

        for (int acIndex=1; acIndex != 2; ++acIndex){
            for (int unitIndex=0; unitIndex != YUnits.size(); ++unitIndex){
                int val = dataUnits.get(colorid, unitIndex, acIndex);
                if (val == -1){
                    bitData.add((byte)0);
                }else if (val == 1){
                    bitData.add((byte)1);
                }
            }
        }

        byte[] data = new byte[bitData.size()>>3];
        for (int i=0; i!= bitData.size(); ++i){
            data[i>>3] <<= 1;
            if (bitData.get(i) == -1){
                data[i>>3] |= 0;
            }else if (bitData.get(i) == 1){
                data[i>>3] |= 1;
            }
        }
        return data;
    }