亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? encoder.java

?? jpeg2000算法實現
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* * CVS identifier: * * $Id: Encoder.java,v 1.55 2001/02/26 10:12:54 grosbois Exp $ * * Class:                   Encoder * * Description:             The encoder object * *                          [from CmdLnEncoder, Diego SANTA CRUZ, May-19-1999] * * * COPYRIGHT: *  * This software module was originally developed by Rapha雔 Grosbois and * Diego Santa Cruz (Swiss Federal Institute of Technology-EPFL); Joel * Askel鰂 (Ericsson Radio Systems AB); and Bertrand Berthelot, David * Bouchard, F閘ix Henry, Gerard Mozelle and Patrice Onno (Canon Research * Centre France S.A) in the course of development of the JPEG2000 * standard as specified by ISO/IEC 15444 (JPEG 2000 Standard). This * software module is an implementation of a part of the JPEG 2000 * Standard. Swiss Federal Institute of Technology-EPFL, Ericsson Radio * Systems AB and Canon Research Centre France S.A (collectively JJ2000 * Partners) agree not to assert against ISO/IEC and users of the JPEG * 2000 Standard (Users) any of their rights under the copyright, not * including other intellectual property rights, for this software module * with respect to the usage by ISO/IEC and Users of this software module * or modifications thereof for use in hardware or software products * claiming conformance to the JPEG 2000 Standard. Those intending to use * this software module in hardware or software products are advised that * their use may infringe existing patents. The original developers of * this software module, JJ2000 Partners and ISO/IEC assume no liability * for use of this software module or modifications thereof. No license * or right to this software module is granted for non JPEG 2000 Standard * conforming products. JJ2000 Partners have full right to use this * software module for his/her own purpose, assign or donate this * software module to any third party and to inhibit third parties from * using this software module for non JPEG 2000 Standard conforming * products. This copyright notice must be included in all copies or * derivative works of this software module. *  * Copyright (c) 1999/2000 JJ2000 Partners. * */package jj2000.j2k.encoder;import jj2000.j2k.quantization.quantizer.*;import jj2000.j2k.image.forwcomptransf.*;import jj2000.j2k.codestream.writer.*;import jj2000.j2k.fileformat.writer.*;import jj2000.j2k.wavelet.analysis.*;import jj2000.j2k.entropy.encoder.*;import jj2000.j2k.quantization.*;import jj2000.j2k.image.input.*;import jj2000.j2k.roi.encoder.*;import jj2000.j2k.codestream.*;import jj2000.j2k.image.*;import jj2000.j2k.util.*;import jj2000.j2k.*;import java.util.*;import java.io.*;/** * This class is the main class of JJ2000's encoder. It instantiates all * objects of the chain and launchs the encoding process. It then writes the * header and the compressed bit stream to the output file. * * <P>First the encoder should be initialized with a ParameterList object * provided through the constructor. Then, the run() method is invoked and the * encoder executes. The exit code of the class can be obtained with the * getExitCode() method, after the constructor and after the run method. A * non-zero value indicates that an error has occurred. * * <P>The modules are inserted in the encoding chain with the following * order: * * <ul> * <li>ImgReader</li> * <li>ImgDataJoiner (if multiple image readers)</li> * <li>ForwCompTransf</li> * <li>Tiler</li> * <li>ImgDataConverter</li> * <li>ForwardWT</li> * <li>Quantizer</li> * <li>ROIScaler</li> * <li>EntropyCoder</li> * <li>PostCompRateAllocator</li> * </ul> * * <P>The encoder uses a pull model. This means that the last module * (PostCompRateAllocator) requests data from its source (EntropyCoder), ... * * <P>Writing of the codestream writing (header+bit stream) is realized by * HeaderEncoder and CodestreamWriter. * * <P>Many modules of the encoder may behave differently depending on the * tile-component. The specifications of their behaviour are kept in * specialized modules extending ModuleSpec class. All these modules are * accessible through an instance of EncoderSpecs class. * * @see ImgReader * @see ImgDataJoiner * @see ForwCompTransf * @see Tiler * @see ImgDataConverter * @see ForwardWT * @see Quantizer * @see ROIScaler * @see EntropyCoder * @see PostCompRateAllocator * @see HeaderEncoder * @see CodestreamWriter * @see ModuleSpec * @see EncoderSpecs * */public class Encoder implements Runnable{    /** The exit code of the run method */    private int exitCode;    /** The parameter list (arguments) */    private ParameterList pl;    /** The default parameter list (arguments) */    private ParameterList defpl;    /** The valid list of options prefixes */    public final static char vprfxs[] = {	ForwCompTransf.OPT_PREFIX, // Mixer module	AnWTFilter.OPT_PREFIX, // Filters type spec	ForwardWT.OPT_PREFIX, // Wavelets module	Quantizer.OPT_PREFIX, // Quantizer module	ROIScaler.OPT_PREFIX, // ROI module	EntropyCoder.OPT_PREFIX, // Coding modules	PostCompRateAllocator.OPT_PREFIX, // Rate allocator	PktEncoder.OPT_PREFIX, // Packet encoder    };    /** The parameter information for this class */    private final static String[][] pinfo = {        { "debug", null,          "Print debugging messages when an error is encountered.","off"},        { "disable_jp2_extension", "[on|off]",          "JJ2000 automatically adds .jp2 extension when using 'file_format'"+          "option. This option disables it when on.", "off"},        { "file_format", "[on|off]",          "Puts the JPEG 2000 codestream in a JP2 file format wrapper.","off"},        { "pph_tile", "[on|off]",          "Packs the packet headers in the tile headers.","off"},        { "pph_main", "[on|off]",          "Packs the packet headers in the main header.","off"},        { "pfile", "<filename of arguments file>",          "Loads the arguments from the specified file. Arguments that are "+          "specified on the command line override the ones from the file.\n"+          "The arguments file is a simple text file with one argument per "+          "line of the following form:\n" +          "  <argument name>=<argument value>\n"+          "If the argument is of boolean type (i.e. its presence turns a "+          "feature on), then the 'on' value turns it on, while the 'off' "+          "value turns it off. The argument name does not include the '-' "+          "or '+' character. Long lines can be broken into several lines "+          "by terminating them with '\'. Lines starting with '#' are "+          "considered as comments. This option is not recursive: any 'pfile' "+          "argument appearing in the file is ignored.",null},        { "tile_parts", "<packets per tile-part>",          "This option specifies the maximum number of packets to have in "+          "one tile-part. 0 means include all packets in first tile-part "+          "of each tile","0"},        { "tiles", "<nominal tile width> <nominal tile height>",          "This option specifies the maximum tile dimensions to use. "+          "If both dimensions are 0 then no tiling is used.","0 0"},        { "ref", "<x> <y>",          "Sets the origin of the image in the canvas system. It sets the "+          "coordinate of the top-left corner of the image reference grid, "+          "with respect to the canvas origin","0 0"},        { "tref", "<x> <y>",          "Sets the origin of the tile partitioning on the reference grid, "+          "with respect to the canvas origin. The value of 'x' ('y') "+          "specified can not be larger than the 'x' one specified in the ref "+          "option.","0 0"},        { "rate", "<output bitrate in bpp>",          "This is the output bitrate in bits per pixel.","100"},        { "lossless", "[on|off]",           "Specifies a lossless compression for the encoder. This options"+          " is equivalent to use reversible quantization ('-Qtype "+          "reversible')"+          " and 5x3 wavelet filters pair ('-Ffilters w5x3'). Note that "+          "this option cannot be used with '-rate'. When this option is "+          "off, the quantization type and the filters pair is defined by "+          "'-Qtype' and '-Ffilters' respectively.","off"},        { "i", "<image file> [<image file> [<image file> ... ]]",          "Mandatory argument. This option specifies the name of the input "+          "image files. Supported formats are PGM (raw), PPM (raw) and PGX, "+          "which is a simple extension of the PGM file format for single "+          "component data supporting arbitrary bitdepths. If the extension "+          "is '.pgm', PGM-raw file format is assumed, if the extension is "+          "'.ppm', PPM-raw file format is assumed, otherwise PGX file "+          "format is assumed. PGM and PPM files are assumed to be 8 bits "+          "deep. A multi-component image can be specified by either "+          "specifying several PPM and/or PGX files, or by specifying one "+          "PPM file.",null},        { "o", "<file name>",          "Mandatory argument. This option specifies the name of the output "+          "file to which the codestream will be written.",null},        { "verbose", null,          "Prints information about the obtained bit stream.","on"},        { "v", "[on|off]",          "Prints version and copyright information.","off"},        { "u", "[on|off]",          "Prints usage information. "+          "If specified all other arguments (except 'v') are ignored","off"},    };    /**     * Instantiates an encoder object, width the ParameterList object     * given as argument. It also retrieves the default ParameterList.     *     * @param pl The ParameterList for this decoder (contains also     * defaults values);     * */    public Encoder(ParameterList pl) {	this.pl = pl;	defpl = pl.getDefaultParameterList();    }    /**     * Returns the exit code of the class. This is only initialized     * after the constructor and when the run method returns.     *     * @return The exit code of the constructor and the run() method.     * */    public int getExitCode() {        return exitCode;    }    /**     * Runs the encoder. After completion the exit code is set, a     * non-zero value indicates that an error ocurred.     *     * @see #getExitCode     * */    public void run() {        boolean verbose;        boolean useFileFormat = false;        boolean pphTile = false;        boolean pphMain = false;        boolean tempSop = false;        boolean tempEph = false;        ImgReader imreader[];        String inext,infile;        StreamTokenizer stok;        StringTokenizer sgtok;        int ncomp;        boolean ppminput;        Vector imreadervec;        boolean imsigned[];        BlkImgDataSrc imgsrc;        int i;        int imgcmpidxs[];        int tw,th;        int refx,refy;        int trefx,trefy;        int pktspertp;        Tiler imgtiler;        BlkImgDataSrc cursrc;        ForwCompTransf fctransf;	ImgDataConverter converter;        EncoderSpecs encSpec;        ForwardWT dwt;        Quantizer quant;        ROIScaler rois;        EntropyCoder ecoder;        PostCompRateAllocator ralloc;        HeaderEncoder headenc;        CodestreamWriter bwriter;        FileFormatWriter ffw;        String outname;        float rate;        int fileLength;        try {            // **** Usage and version ****            try {                // Do we print version information?                if (pl.getBooleanParameter("v")) {                    printVersionAndCopyright();                }                // Do we print usage information?                if (pl.getParameter("u").equals("on")) {                    printUsage();                    return; // When printing usage => exit                }                // Do we print info ?                verbose = pl.getBooleanParameter("verbose");            }            catch (StringFormatException e) {                error("An error occured while parsing the arguments:\n"+                      e.getMessage(),1);                if(pl.getParameter("debug").equals("on"))                    e.printStackTrace();                else {                    error("Use '-debug' option for more details",2);                }                return;            }            catch (NumberFormatException e) {                error("An error occured while parsing the arguments:\n"+                      e.getMessage(),1);                if(pl.getParameter("debug").equals("on"))                    e.printStackTrace();                else {                    error("Use '-debug' option for more details",2);                }                return;            }            // **** Get general parameters ****                        // Check that we have the mandatory parameters            if (pl.getParameter("i") == null) {                error("Mandatory input file is missing (-i option)",2);                return;            }            if (pl.getParameter("o") == null) {                error("Mandatory output file is missing (-o option)",2);                return;            }            outname = pl.getParameter("o");            if (pl.getParameter("file_format").equals("on"))                useFileFormat = true;            if(useFileFormat) {                String outext = null;                String outns = outname;                if(outname.lastIndexOf('.')!=-1) {                    outext = outname.substring(outname.lastIndexOf('.'),                                               outname.length());                    outns = outname.substring(0,outname.lastIndexOf('.'));                }                if(outext==null || !outext.equalsIgnoreCase(".jp2")) {                    if(!pl.getBooleanParameter("disable_jp2_extension")) {                        FacilityManager.getMsgLogger().                            printmsg(MsgLogger.INFO,"JPEG 2000 file names"+                                     " end with .jp2 extension when using"+                                     " the file format of part 1. This "+                                     "extension is automatically"+                                     " added by JJ2000. Use "+                                     "'-disable_jp2_extension' to "+                                     "disable it.");                                                outname = outns+".jp2";                    }                }            }            if (pl.getParameter("tiles") == null) {                error("No tiles option specified",2);                return;            }            if (pl.getParameter("pph_tile").equals("on")){                pphTile = true;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女爽到高潮91| 自拍偷自拍亚洲精品播放| 九九视频精品免费| 亚洲三级理论片| 精品精品国产高清a毛片牛牛| 成人av电影在线| 麻豆成人久久精品二区三区小说| 亚洲日本在线天堂| 国产视频一区在线播放| 欧美卡1卡2卡| 欧美一a一片一级一片| 国产精品自在在线| 日本不卡一二三区黄网| 亚洲精品美国一| 中文字幕av一区二区三区免费看| 欧美一级在线观看| 欧美日韩视频在线第一区| 99精品在线免费| 粉嫩av一区二区三区| 日本中文字幕不卡| 亚洲午夜羞羞片| 亚洲在线中文字幕| 17c精品麻豆一区二区免费| 国产亲近乱来精品视频| 欧美变态tickling挠脚心| 制服丝袜国产精品| 欧美欧美欧美欧美首页| 欧美影片第一页| 色婷婷精品大视频在线蜜桃视频| 99久久国产免费看| 91亚洲大成网污www| 成人精品电影在线观看| 国产乱码字幕精品高清av | 亚洲精品五月天| 国产精品九色蝌蚪自拍| 国产日韩av一区| 久久精品免费在线观看| 久久久精品天堂| 久久亚区不卡日本| 国产欧美一区二区三区在线老狼| www亚洲一区| 久久婷婷一区二区三区| 久久久久国产成人精品亚洲午夜| 精品国产精品网麻豆系列| 精品久久国产97色综合| 2021中文字幕一区亚洲| 久久精品网站免费观看| 日本一区二区三区四区在线视频| 国产蜜臀av在线一区二区三区| 久久精品一区二区三区不卡牛牛| 国产丝袜在线精品| 国产精品区一区二区三| 亚洲天堂精品在线观看| 亚洲欧美国产77777| 亚洲综合久久久| 青椒成人免费视频| 国产在线视频精品一区| 成人听书哪个软件好| www.日韩精品| 欧美日韩综合在线| 日韩精品一区二区三区swag | 3d成人h动漫网站入口| 日韩欧美在线综合网| 久久噜噜亚洲综合| 国产精品不卡一区| 亚洲不卡在线观看| 久久精品国产秦先生| 国产成人午夜99999| 91色.com| 日韩精品一区二区三区视频播放 | 日韩三级在线观看| 国产日韩欧美a| 亚洲美女精品一区| 日本美女视频一区二区| 国产不卡免费视频| 欧美在线视频你懂得| 精品国产91亚洲一区二区三区婷婷 | 国产成人av自拍| 欧洲人成人精品| 久久嫩草精品久久久久| 亚洲蜜臀av乱码久久精品蜜桃| 青青草97国产精品免费观看| 成人av网在线| 日韩欧美一区二区免费| 日韩毛片视频在线看| 麻豆精品视频在线观看视频| 成人视屏免费看| 欧美理论电影在线| 综合中文字幕亚洲| 久久精品国产精品亚洲精品| 99这里只有久久精品视频| 欧美一区二区三区视频在线观看| 国产精品天干天干在观线| 日韩国产欧美在线播放| 不卡免费追剧大全电视剧网站| 欧美日韩亚洲另类| 国产女人aaa级久久久级| 日韩精品一二三| 色婷婷综合久久久中文一区二区| 精品福利视频一区二区三区| 亚洲午夜免费福利视频| 成人免费视频视频| 精品久久国产老人久久综合| 亚洲成人免费看| 91在线一区二区三区| 欧美精品一区男女天堂| 日日夜夜一区二区| 色婷婷久久综合| 亚洲欧美一区二区在线观看| 国产一区二区三区蝌蚪| 欧美精品高清视频| 亚洲综合视频在线观看| 成人激情视频网站| 久久久久99精品国产片| 秋霞电影一区二区| 欧美无人高清视频在线观看| 国产精品大尺度| 国产一区二区在线看| 日韩欧美精品在线| 午夜电影一区二区三区| 欧美手机在线视频| 亚洲欧美经典视频| 色哟哟精品一区| 一区二区三区在线免费| av成人老司机| 国产精品成人免费| av电影天堂一区二区在线| 中文字幕中文乱码欧美一区二区| 高清不卡一区二区在线| 2021国产精品久久精品| 久久精品国产澳门| 欧美mv和日韩mv国产网站| 奇米精品一区二区三区在线观看| 欧美精品xxxxbbbb| 日本视频一区二区三区| 欧美一区二区三区四区视频 | 色88888久久久久久影院野外| 国产精品国产三级国产aⅴ无密码| 成人午夜视频免费看| 欧美韩国日本综合| 97超碰欧美中文字幕| 亚洲卡通动漫在线| 欧美性生活大片视频| 亚洲va国产va欧美va观看| 91精品国产综合久久蜜臀| 青青草国产成人av片免费| 久久综合久久久久88| 国产精品亚洲午夜一区二区三区 | 亚洲r级在线视频| 91精品国产综合久久久久久| 蜜桃精品视频在线观看| 久久网站热最新地址| 成人h版在线观看| 一区二区三区加勒比av| 欧美日韩国产色站一区二区三区| 青青青爽久久午夜综合久久午夜| 日韩午夜三级在线| 国产剧情av麻豆香蕉精品| 国产精品理伦片| 欧美午夜理伦三级在线观看| 日韩av成人高清| 国产香蕉久久精品综合网| av亚洲精华国产精华精| 亚欧色一区w666天堂| 精品国一区二区三区| av中文字幕亚洲| 视频一区视频二区在线观看| 精品国产电影一区二区| 色综合久久中文字幕综合网| 日韩一区欧美二区| 国产精品美女视频| 欧美日韩国产综合视频在线观看| 久久不见久久见中文字幕免费| 国产精品情趣视频| 欧美视频在线观看一区| 韩国中文字幕2020精品| 亚洲精品国产一区二区三区四区在线| 欧美日本一道本在线视频| 国产乱人伦偷精品视频免下载| 亚洲激情av在线| 精品乱人伦小说| 色欧美日韩亚洲| 国产精品亚洲专一区二区三区| 亚洲精品福利视频网站| 久久影音资源网| 欧美性生活久久| heyzo一本久久综合| 男男视频亚洲欧美| 伊人一区二区三区| 精品成人一区二区三区四区| 色偷偷成人一区二区三区91| 精品一区二区三区免费视频| 亚洲综合清纯丝袜自拍| 国产午夜精品理论片a级大结局 | 成人伦理片在线| 日本欧美加勒比视频| 亚洲人妖av一区二区| 2020日本不卡一区二区视频| 在线播放一区二区三区| 91污在线观看|