• 大小: 3.21MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-31
  • 语言: 其他
  • 标签: contourlet  VC  C  

资源简介

轮廓波(contourlet)变换的VC代码,可以很好地移植。

资源截图

代码片段和文件信息

/*
   contourlet - Implementation of the contourlet transform for image coding
   Copyright (C) 2005 Vivien Chappelier - IRISA/University of Rennes 1

   This program is free software; you can redistribute it and/or
   modify it under the terms of the GNU General Public
   License as published by the Free Software Foundation; either
   version 2 of the License or (at your option) any later version.

   This program is distributed in the hope that it will be useful
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU General Public
   License along with this program; if not write to the Free
   Software Foundation Inc. 675 Mass Ave Cambridge MA 02139 USA.
*/

#include “it/mat.h“
#include “it/io.h“
#include “it/distance.h“
#include 
#include 
#include “dfb.h“
#include “contourlet.h“
#include “pyramid.h“

//#define MPEG
//#define VILLA_13_11
#define ANTON_9_7

contourlet_t *contourlet_new(int ct_levels ivec dfb_levels)
{
  contourlet_t *ct;
  int l;

  ct = (contourlet_t *) malloc(sizeof(contourlet_t));
  ct->ct_levels = ct_levels;
  ct->dfb_levels = ivec_clone(dfb_levels);
  ct->high = (double ****)calloc(ct_levels sizeof(mat *));
  ct->low = NULL;
  /* pyramid filters */
  ct->H0 = 0;
  ct->G0 = 0;
#ifdef MPEG
  ct->H0 = vec_new_string(“2  0 -4 -3  5 19   26   19    5 -3 -4  0  2“);
  vec_div_by(ct->H0 64/sqrt(2));
  ct->G0 = vec_new_string(“0  1  0 -5  0 20   32   20    0 -5  0  1  0“);
  vec_div_by(ct->G0 64/sqrt(2));
#endif
#ifdef ANTON_9_7
  ct->H0 = vec_new_string(“ 3.782845550699535e-02 -2.384946501937986e-02 -1.106244044184226e-01 3.774028556126536e-01 8.526986790094022e-01 3.774028556126537e-01 -1.106244044184226e-01 -2.384946501937986e-02 3.782845550699535e-02“);
  ct->G0 = vec_new_string(“-6.453888262893856e-02 -4.068941760955867e-02 4.180922732222124e-01 7.884856164056651e-01 4.180922732222124e-01 -4.068941760955867e-02 -6.453888262893856e-02“);
#endif
#ifdef VILLA_13_11
  ct->H0 = vec_new_string(“-8.472827741318157e-03 3.759210316686883e-03 4.728175282882753e-02 -3.347508104780150e-02 -6.887811419061032e-02 3.832692613243884e-01 7.672451593927493e-01 3.832692613243889e-01 -6.887811419061045e-02 -3.347508104780156e-02 4.728175282882753e-02 3.759210316686883e-03 -8.472827741318157e-03“);
  ct->G0 = vec_new_string(“ 1.418215589126359e-02 6.292315666859828e-03 -1.087373652243805e-01 -6.916271012030040e-02 4.481085999263908e-01 8.328475700934288e-01 4.481085999263908e-01 -6.916271012030040e-02 -1.087373652243805e-01 6.292315666859828e-03 1.418215589126359e-02“);
#endif
  assert(ct->H0);
  assert(ct->G0);

  /* allocate directionnal subbands */
  for(l = 0; l < ct_levels; l++) {
    /* allocate directionnal subbands for that level */
    ct->high[l] = (mat *) calloc(1 << ct->

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     262159  2012-02-24 20:07  Contourlet_demo_src\1.pgm

     文件       6662  2012-02-24 19:43  Contourlet_demo_src\contourlet.cpp

     文件       1771  2012-02-24 19:09  Contourlet_demo_src\contourlet.h

     文件       6406  2012-02-24 20:13  Contourlet_demo_src\ContourTst.dsp

     文件        543  2010-03-10 23:19  Contourlet_demo_src\ContourTst.dsw

     文件     238592  2012-02-24 20:21  Contourlet_demo_src\ContourTst.ncb

     文件      56832  2012-02-24 20:21  Contourlet_demo_src\ContourTst.opt

     文件        254  2012-02-24 20:07  Contourlet_demo_src\ContourTst.plg

     文件    1638417  2012-02-24 20:04  Contourlet_demo_src\Debug\1.pgm

     文件      12538  2012-02-24 19:59  Contourlet_demo_src\Debug\arithmetic_codec.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\arithmetic_codec.sbr

     文件       7526  2012-02-24 19:59  Contourlet_demo_src\Debug\bitbuffer.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\bitbuffer.sbr

     文件      21362  2012-02-24 19:59  Contourlet_demo_src\Debug\contourlet.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\contourlet.sbr

     文件    2434048  2012-02-24 19:59  Contourlet_demo_src\Debug\ContourTst.bsc

     文件     626818  2012-02-24 19:59  Contourlet_demo_src\Debug\ContourTst.exe

     文件     493540  2012-02-24 19:59  Contourlet_demo_src\Debug\ContourTst.ilk

     文件     836608  2012-02-24 19:59  Contourlet_demo_src\Debug\ContourTst.pdb

     文件      51034  2012-02-24 19:59  Contourlet_demo_src\Debug\dfb.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\dfb.sbr

     文件      19732  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc.sbr

     文件      22691  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_codec.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_codec.sbr

     文件      25497  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_decoder.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_decoder.sbr

     文件      30709  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_encoder.obj

     文件          0  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_encoder.sbr

     文件      37923  2012-02-24 19:59  Contourlet_demo_src\Debug\ezbc_tables.obj

............此处省略92个文件信息

评论

共有 条评论