资源简介

实现图像的分形维数特征的提取,适合初学者;可用于影像分类特征之一。

资源截图

代码片段和文件信息


#include “stdafx.h“
#include “cv.h“
#include “highgui.h“
#include “cxcore.h“

//计算分形盒子维
//#undef的使用是为了解决一些乱七八糟的问题
#ifdef min
#undef min
#endif
#ifdef max
#undef max
#endif
#include 
#include 
#include 
#include 

using namespace std;

void Calculate_Fractal_Dim(char* Img_dataint Img_size)
{
   //**********************************************//
   //the width and height of the Image should be the same
   //gray level : 256
   //points for Least Square method : 20
   //**********************************************//
   int i=0j=0;

   //分形盒子维数相关参数
   int M=Img_size;                                        //图像尺寸
   int G=256;                                             //灰度级
   int L_point=32;                                        //最小二乘法样本点数
   valarray Image_VAL(Img_size*Img_size);
   valarray L_VAL(L_point);                          //网格尺寸
   valarray h_VAL(L_point);   //盒子高度
   valarray r_VAL(L_point);                       //r=log10(1/(L/M))
   valarray Nr_VAL((double)0L_point);            //覆盖图像所需的盒子数
   valarray nNr_VAL((double)0L_point);           //临时用,未做log运算的,非空有效盒子数
   valarray Grid_Num(L_point);                       //网格数目
   valarray fractal_D(0.0L_point);               //分形维数
   
   //复制数据
   int k=0;
   for(i=0;i   {
   for(j=0;j    {
   Image_VAL[k]=Img_data[i*Img_size+j];
   k++;
   }
   }

   
   /*****************************************************************************
   根据论文《二维灰度图像的分形维数计算》中提供的方法来估计网格的网格值及盒子高度
   网格大小的约束范围为M^(1/3)<=L<=M/3
   ******************************************************************************/
   //网格大小及相关参数
   int L_min = (int)powf(M1/3.0);      //网格块的最小值
   int L_max = (int)M/2;                //网格块的最大值
   int L_step = (int)((L_max - L_min)/(float)L_point);       //网格增加的步距

   /*********************************************************************************
   根据论文《An efficient approach to estimate fractal dimension of textural images》
   中提供的方法来估计网格的网格值及盒子高度.
   网格大小的约束范围为1   **********************************************************************************/
//    int L_min = 2;          //网格块的最小值
//    int L_max = (int)M/2;   //网格块的最大值
//    int L_step = 1;         //网格增加的步距


   for(i=0;i   {
   L_VAL[i] = L_min + i*L_step;                 //各样本点对应的网格大小L
   h_VAL[i] = (G*L_VAL[i])/M;                   //各样本点对应的盒子高度h
   r_VAL[i] = log10(1/(L_VAL[i]/(float)M));     //各样本点对应的r   
   Grid_Num[i] = M/L_VAL[i];                    //各样本点对应的网格数目
   }


   int m=0n=0t=0;
   int grid_lt_x=0grid_lt_y=0grid_rd_x=0grid_rd_y=0;
   unsigned char grid_I_max=0grid_I_min=0;           //网格最大灰度值和最小灰度值
   int dbc_l=0dbc_k=0nr=0;                          //最小和最大灰度值所对应的单位网格高度
   int gray_k=0gray_l=0;                             //不同网格高度中,最大灰度值和最小灰度

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-23 09:53  FD_test\
     目录           0  2018-08-23 09:52  FD_test\Debug\
     文件      289182  2018-08-23 09:52  FD_test\Debug\fd.obj
     文件      573495  2018-08-23 09:52  FD_test\Debug\FD_test.exe
     文件      838996  2018-08-23 09:52  FD_test\Debug\FD_test.ilk
     文件     4760880  2018-07-23 14:10  FD_test\Debug\FD_test.pch
     文件     1147904  2018-08-23 09:52  FD_test\Debug\FD_test.pdb
     文件        1848  2018-06-11 09:05  FD_test\Debug\StdAfx.obj
     文件      222208  2018-08-23 09:52  FD_test\Debug\vc60.idb
     文件      167936  2018-08-23 09:52  FD_test\Debug\vc60.pdb
     文件       13720  2018-08-23 09:52  FD_test\fd.cpp
     文件           0  2018-06-07 13:40  FD_test\fd.h
     文件        4942  2018-06-11 09:07  FD_test\FD_test.dsp
     文件         537  2018-06-07 13:37  FD_test\FD_test.dsw
     文件       50176  2018-08-23 09:53  FD_test\FD_test.ncb
     文件       55808  2018-08-23 09:53  FD_test\FD_test.opt
     文件        1662  2018-08-23 09:52  FD_test\FD_test.plg
     目录           0  2018-06-21 15:36  FD_test\images\
     文件       83158  2018-06-12 10:59  FD_test\images\00.png
     文件      740395  2018-06-11 16:01  FD_test\images\01-.png
     文件      202296  2018-06-11 17:15  FD_test\images\01.png
     文件       70564  2018-06-11 17:02  FD_test\images\02.png
     文件     2425883  2018-05-30 16:58  FD_test\images\053.png
     文件     5454985  2018-06-14 14:08  FD_test\images\DJI_0025.JPG
     文件     5253072  2018-06-21 15:36  FD_test\images\DJI_0025_1.JPG
     文件     8321324  2017-08-02 16:14  FD_test\images\DJI_0075.JPG
     文件     8398347  2018-06-21 15:33  FD_test\images\DJI_0075_1.JPG
     文件       13904  2018-06-12 13:38  FD_test\images\房屋1.png
     文件        6655  2018-06-12 13:44  FD_test\images\房屋2.png
     文件      196662  2018-06-15 14:08  FD_test\images\房屋3.bmp
     文件       51163  2018-06-12 13:49  FD_test\images\房屋3.png
............此处省略11个文件信息

评论

共有 条评论