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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? fractal.c

?? 圖像處理軟件,功能比較基礎(chǔ)
?? C
字號(hào):
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#include <string.h>

#include "imgproc.h"
#define MaxScale 10

unsigned char **gDilation(unsigned char **image, short row, short col,
                   unsigned char *element[3], short num)
{
   /* f+g = max{ f(i+n,j+m)+g(n,m) } */
	short i,j,k;
	unsigned char **pimage;		/* pointer to the processed image */
    short max;
    short temp;
    short tmp_row, tmp_col;

    pimage = (unsigned char **)fspace_2d(row,col,sizeof(unsigned char));
    if(pimage == NULL) return NULL;

    for(i=0; i<row; i++) {
       for(j=0; j<col; j++) {
          max = 0;
          for(k=0; k<num; k++) {
             tmp_row = i+element[k][0];
             if(tmp_row<0) {
                j = col+1;
                break;
                }
             tmp_col = j+element[k][1];
             if(tmp_col<0) break;
             temp = image[tmp_row][tmp_col]+element[k][2];
             max = temp>max ? temp : max;
          }
          pimage[i][j] = max>255 ? 255 : (unsigned char)max;
       }
    }
    return pimage;
}

unsigned char **gErosion(unsigned char **image, short row, short col,
                   unsigned char *element[3], short num)
{
   /* f-g = min{ f(i+n,j+m)-g(n,m) } */
	short i,j,k;
	unsigned char **pimage;		/* pointer to the processed image */
        short min;
        short temp;
        short tmp_row, tmp_col;

        pimage = (unsigned char **)fspace_2d(row,col,sizeof(unsigned char));
        if(pimage == NULL) return NULL;

        for(i=0; i<row; i++) {
           for(j=0; j<col; j++) {
              min = 255;
              for(k=0; k<num; k++) {
                 tmp_row = i+element[k][0];
                 if(tmp_row<0) {
                    j = col+1;
                    break;
                    }
                 tmp_col = j+element[k][1];
                 if(tmp_col<0) break;

                 temp = image[tmp_row][tmp_col]+element[k][2];
                 min = temp<min ? temp : min;
              }
              pimage[i][j] = min<0 ? 0 : (unsigned char)min;
           }
        }
        return pimage;
}


void linefit(double *x, double *y, short n, double *k, double *b)
{
   short i;
   double a11,a12,a13,a21,a22,a23;
   double tmp;

   a11 = 0;
   a12 = 0;
   a13 = 0;
   a21 = 0;
   a22 = 0;
   a23 = 0;
   for(i=0; i<n; i++) {
      a11 += x[i]*x[i];
	  a12 += x[i];
	  a13 += -x[i]*y[i];
	  a21 += x[i];
	  a22 += 1;
	  a23 += -y[i];
   }
   
   tmp = a21*a12-a22*a11;
   if(fabs(tmp)>0.01) {
      *b = (a21*a13-a11*a23)/tmp;
   }

   *k = (a13-a12*(*b))/a11;
}

double **calfractal(unsigned char **image, short row, short col, 
           short minscale, short maxscale, unsigned char *element[3], short num)
{
	short          i,j,k,n,m;
	double         **area[MaxScale];          //pointer to saving area at all scale
	unsigned char  **temp;   //temporatory pointer
	unsigned char  **upper;  //
	unsigned char  **lower;  //
	short          winsize;  //the half size of window for calculating area; 
	short          current_scale;
	//double         
	short          tmp_row,tmp_col;
	double         *temp_x,*temp_y;
	double         temp_b,temp_k;
	
	
	double **result;       //save the fractal result 
	
	
	result = (double **)fspace_2d(row,col,sizeof(double));
	if(result == NULL) return NULL;
	
	//processing dilation at scale (minscale)
	upper = gDilation(image,row,col,element,num);
	if(upper == NULL) return NULL;
	for(i=1; i<minscale; i++){
	   temp = gDilation(upper,row,col,element,num);
	   if(temp == NULL) return NULL;
	   memcpy(upper,temp,row*col*sizeof(unsigned char));
	   ffree_2d(temp,row);    
	}
	
	//processing erosion at scale (minscale)
	lower = gErosion(image,row,col,element,num);
	if(lower == NULL) return NULL;
	for(i=1; i<minscale; i++){
	   temp = gErosion(image,row,col,element,num);
	   if(temp == NULL) return NULL;
	   memcpy(lower,temp,row*col*sizeof(unsigned char));
	   ffree_2d(temp,row);
	}
	
	//calculating the area
	// A(i,j,scale) = (
	current_scale = minscale;
    winsize = maxscale;
	for(k=0; k<maxscale+minscale+1; k++){
	   area[k] = (double **)fspace_2d(row,col,sizeof(double));
	   if(area[k] == NULL) return NULL;
	   
	   for(i=0; i<row; i++) {
	      for(j=0; j<col; j++) {
	         area[k][i][j] = 0.0;
	         for(n=-winsize; n<winsize; n++){
	            for(m=-winsize; m<winsize; m++) {
	               tmp_row = i+n;
	               if(tmp_row<0) {
	               	   n = winsize +1;
	               	   j = col + 1;
	               	   break;
	               	}
	               
	               tmp_col = j+m;
	               if(tmp_col<0){
	               	   n = winsize + 1;
	               	   break;
	               	}
				   area[k][i][j] += upper[tmp_row][tmp_col] - lower[tmp_row][tmp_col];
	               } // end of m
	            } //end of n
			 area[k][i][j] /= 2*current_scale;
	         } //end of j
	      } //end of i
	   current_scale++;
	   } //end of k

	//calculating the fractal at any pixels
	temp_x = (double *)calloc(maxscale-minscale+1,sizeof(double));
	temp_y = (double *)calloc(maxscale-minscale+1,sizeof(double));
	for(i=0; i<row; i++) {
		for(j=0; j<col; j++) {
			for(k=0; k<maxscale-minscale+1; k++) {
			   temp_x[k] = minscale+k;
			   temp_y[k] = area[k][i][j];
			}
			linefit(temp_x,temp_y,maxscale-minscale+1,&temp_k,&temp_b);
			result[i][j] = temp_k;
		}
	}
	return result;
	}


int main(int argc,char *argv[])
{
   unsigned char **image;
   char          file[256];
   double        **result;
//   FILE          *fp;

   printf("Enter the input file:\n");
   scanf("%s",file);
   
   image = InputImageWithName(&row,&col,file);
   if(image == NULL) {
      printf("Error in reading image file!\n");
	  return -1;
   }

   result == calfractal(image,row,col,minscale,maxscale,element,num);


}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看视频一区| 成人av在线电影| 亚洲精品日韩综合观看成人91| 日韩免费观看2025年上映的电影| aaa欧美日韩| 国产成人自拍网| 久久99热狠狠色一区二区| 亚洲国产精品久久不卡毛片| 欧美精彩视频一区二区三区| wwwwww.欧美系列| 日韩精品一区二区三区蜜臀| 26uuu亚洲综合色| 成人在线一区二区三区| 日韩欧美在线网站| 欧美日韩视频专区在线播放| 91视频国产观看| jvid福利写真一区二区三区| 激情图区综合网| 国产精品一区二区黑丝| 麻豆成人久久精品二区三区红 | 成人av电影免费在线播放| 国产成人av电影在线播放| 国产伦精品一区二区三区视频青涩| 捆绑调教一区二区三区| 日本系列欧美系列| 美女诱惑一区二区| 国产99久久久国产精品潘金| 91视频免费看| 91精品在线一区二区| 国产一区二区免费视频| 国产成人av电影在线| 欧美在线高清视频| 欧美成人一区二区三区在线观看| 久久久亚洲精品石原莉奈| 中文字幕一区二区三区四区不卡 | 精品国产一区二区三区不卡| 2021国产精品久久精品| 日韩中文字幕不卡| 国产成人免费视频网站高清观看视频 | 色婷婷av一区二区三区软件| 欧美人妇做爰xxxⅹ性高电影| 日韩欧美国产综合| 亚洲精品成人天堂一二三| 美脚の诱脚舐め脚责91| 日本高清成人免费播放| 久久一区二区三区四区| 三级久久三级久久| 色综合天天综合在线视频| 久久久久久久久久久电影| 欧美一区二区日韩| 中文字幕+乱码+中文字幕一区| 一区二区日韩av| 成人精品小蝌蚪| 久久亚洲捆绑美女| 爽好久久久欧美精品| 在线视频国内自拍亚洲视频| 国产精品青草久久| 一级日本不卡的影视| 激情综合色播激情啊| 69成人精品免费视频| 亚洲一区二区三区视频在线播放 | 国产美女主播视频一区| 91精品一区二区三区在线观看| 亚洲精品欧美专区| 91在线观看美女| 中文字幕一区视频| 日韩一区二区三区电影在线观看 | 亚洲同性gay激情无套| 国产成人综合亚洲91猫咪| 久久久精品综合| 风流少妇一区二区| 国产精品电影一区二区三区| 国产91精品精华液一区二区三区| 国产区在线观看成人精品| 波波电影院一区二区三区| 亚洲视频一区二区在线| 91国产视频在线观看| 亚洲国产精品视频| 26uuu精品一区二区三区四区在线| 免费在线成人网| 亚洲国产精品高清| 在线观看视频91| 蜜桃视频一区二区三区在线观看| 亚洲精品一区二区三区福利| 成人精品一区二区三区中文字幕| 夜夜精品浪潮av一区二区三区| 欧美狂野另类xxxxoooo| 国产一区二区三区蝌蚪| 中文字幕中文字幕在线一区| 欧美精品v国产精品v日韩精品| 国产乱子伦一区二区三区国色天香| 亚洲国产高清aⅴ视频| 欧美三级欧美一级| 成人国产免费视频| 蜜臀av一级做a爰片久久| 亚洲欧洲日韩在线| 精品电影一区二区三区| 色爱区综合激月婷婷| 国产精品一区在线观看乱码 | 亚洲欧美视频在线观看| 欧美成人精品福利| 欧美日韩和欧美的一区二区| 丁香天五香天堂综合| 喷白浆一区二区| 亚洲精品国产一区二区三区四区在线| 欧美酷刑日本凌虐凌虐| 色综合久久66| 欧美日韩高清在线| 91亚洲国产成人精品一区二区三| 奇米777欧美一区二区| 欧美精品一区二区在线观看| 欧美性大战久久久久久久| 岛国一区二区三区| 不卡视频一二三| 懂色av一区二区在线播放| 精品一区二区三区在线播放 | 成人免费黄色大片| 高清视频一区二区| 国产精品一区二区男女羞羞无遮挡| 日韩和欧美一区二区| 日本女优在线视频一区二区| 亚洲国产精品嫩草影院| 亚洲va欧美va人人爽午夜| 亚洲国产一区二区a毛片| 亚洲成国产人片在线观看| 午夜在线成人av| 久久精品国产亚洲5555| 精品在线观看免费| 成人在线视频首页| 99国产精品一区| 欧美唯美清纯偷拍| 欧美日韩卡一卡二| 欧美一区二区美女| 国产午夜精品美女毛片视频| 最新国产成人在线观看| 亚洲国产中文字幕在线视频综合| 日韩电影免费一区| 国产精品99久久久久| 欧美丝袜丝交足nylons| 欧美tickle裸体挠脚心vk| 日本一区二区成人在线| 亚洲大片在线观看| 国产精品一区二区三区四区| 欧美中文字幕一区二区三区亚洲| 91精品国产麻豆国产自产在线| 国产欧美日本一区视频| 日韩av成人高清| 在线一区二区三区四区五区 | 五月综合激情网| 成人性视频免费网站| 91麻豆精品国产91久久久久久| 中文字幕av在线一区二区三区| 婷婷一区二区三区| 色婷婷久久99综合精品jk白丝| 亚洲精品在线免费观看视频| 亚洲中国最大av网站| 不卡的电影网站| 国产亚洲美州欧州综合国| 图片区小说区区亚洲影院| 91蝌蚪porny九色| 中文字幕欧美区| 成人午夜电影网站| 久久久久九九视频| 国产精品一区专区| 亚洲精品在线观| 激情文学综合插| 久久日韩粉嫩一区二区三区| 韩国女主播成人在线| 日韩一卡二卡三卡四卡| 免费一区二区视频| 欧美高清激情brazzers| wwwwww.欧美系列| 久久99蜜桃精品| 日韩一区国产二区欧美三区| 亚洲五码中文字幕| 欧美日韩一本到| 爽好久久久欧美精品| 欧美亚洲高清一区二区三区不卡| 亚洲精品成人悠悠色影视| 91啦中文在线观看| 亚洲成人av一区二区| 国产精品福利av| 在线观看国产一区二区| 午夜视频一区二区三区| 91精品国产综合久久香蕉麻豆| 国内精品伊人久久久久av影院| 久久影院午夜片一区| 粉嫩嫩av羞羞动漫久久久| 国产精品视频看| 欧美性生活久久| 国产高清亚洲一区| 亚洲精品高清视频在线观看| 欧美巨大另类极品videosbest| 六月丁香综合在线视频| 亚洲国产精品二十页| 欧美三级乱人伦电影| 欧美久久久久久久久久| 日本一不卡视频| 亚洲精品网站在线观看| 欧美成人乱码一区二区三区|