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

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

?? main.c

?? 小波圖像變換 以VC作為開發環境
?? C
字號:
#include "local.h"

static void doit();
static void usage();

static char *progname = NULL;

static FILE *fpIn = NULL;
static int n = -1;
static int fInterp = 2;
static int ndim = -1;

static enum {
	OFMT_GNUPLOT, OFMT_NORMAL, OFMT_XGRAPH, OFMT_TWOCOLUMN
} ofmt = OFMT_NORMAL;

static enum {
	FTYP_BATTLE,
	FTYP_BURT,
	FTYP_COIFLET,
	FTYP_DAUB,
	FTYP_HAAR,
	FTYP_PSCOIFLET,
	FTYP_SPLINE
} ftyp = FTYP_HAAR;
static int orderCoif = 2;
static int orderDaub = 4;
static char orderSpline[2] = "";
static bool overrideOffsets = FALSE;
static int offH = 0;
static int offG = 0;
static int offHtilde = 0;
static int offGtilde = 0;
static bool exchangeCoeffs = FALSE;

#define MXN_DIM 10	/* maximum dimensionality of data */
#ifdef ND_REFINEMENT_SUPPORTED
static unsigned long nOfDim[MXN_DIM];
#endif

void main(argc, argv)
	int argc;
	char **argv;
{
	int ch;
	extern char *optarg;
	extern int optind;
	bool ok = TRUE;
	char *pOptarg;
	int lgFInterp;

	progname = argv[0];
	while ((ch = getopt(argc, argv, "2ABC:D:ef:gHm:n:o:PS:x?")) != -1) {
		switch (ch) {

		case '2':
			ofmt = OFMT_TWOCOLUMN;
			break;

		case 'A':
			ftyp = FTYP_BURT;
			break;

		case 'B':
			ftyp = FTYP_BATTLE;
			break;

		case 'C':
			ftyp = FTYP_COIFLET;
			orderCoif = atoi(optarg);
			if (orderCoif != 2 && orderCoif != 4 && orderCoif != 6)
				ok = FALSE;
			break;

		case 'D':
			ftyp = FTYP_DAUB;
			orderDaub = atoi(optarg);
			if (orderDaub != 4 && orderDaub != 6 && orderDaub != 8
					&& orderDaub != 10 && orderDaub != 12 && orderDaub != 20)
				ok = FALSE;
			break;

		case 'e':
			exchangeCoeffs = TRUE;
			break;

		case 'f':
			fInterp = atoi(optarg);
			for (lgFInterp = 0; (1 << lgFInterp) < fInterp; lgFInterp++)
				continue;
			if ((1 << lgFInterp) != fInterp)
				ok = FALSE;
			break;

		case 'g':
			ofmt = OFMT_GNUPLOT;
			break;

		case 'H':
			ftyp = FTYP_HAAR;
			break;

		case 'm':
#ifdef ND_REFINEMENT_SUPPORTED
			ndim = 0;
			n = 1;
			pOptarg = optarg;
			while (*pOptarg != '\0') {
				if (ndim >= MXN_DIM) {
					ok = FALSE;
					break;
				}
				nOfDim[ndim] = strtol(pOptarg, &pOptarg, 10);
				if (*pOptarg == ',')
					pOptarg++;
				else if (*pOptarg != '\0') {
					ok = FALSE;
					break;
				}
				n *= nOfDim[ndim];
				ndim++;
			}
#else
			(void) fprintf(stderr,
					"multidimensional refinement not yet supported -- exiting\n");
			exit(1);
#endif
			break;

		case 'n':
			n = atoi(optarg);
			break;

		case 'o':
			pOptarg = optarg;
			overrideOffsets = TRUE;
			offH = strtol(pOptarg, &pOptarg, 10);
			if (pOptarg == optarg)
				ok = FALSE;
			else {
				/* mirrored coefficients default to the same offsets */
				if (*pOptarg == ',') {
					pOptarg++;
					offG = strtol(pOptarg, &pOptarg, 10);
					if (*pOptarg == ',') {
						pOptarg++;
						offHtilde = strtol(pOptarg, &pOptarg, 10);
						if (*pOptarg == ',') {
							pOptarg++;
							offGtilde = strtol(pOptarg, &pOptarg, 10);
						} else
							offGtilde = offH;
					} else {
						offHtilde = offG;
						offGtilde = offH;
					}
				} else
					offGtilde = offHtilde = offG = offH;
				if (*pOptarg != '\0')
					ok = FALSE;
			}
			break;

		case 'P':
			ftyp = FTYP_PSCOIFLET;
			break;

		case 'S':
			ftyp = FTYP_SPLINE;
			if (strlen(optarg) != 3)
				ok = FALSE;
			else {
				strcpy(orderSpline, optarg);
				if (!STR_EQ(orderSpline, "2,2")
						&& !STR_EQ(orderSpline, "2,4")
						&& !STR_EQ(orderSpline, "3,3")
						&& !STR_EQ(orderSpline, "3,7"))
					ok = FALSE;
			}
			break;
			
		case 'x':
			ofmt = OFMT_XGRAPH;
			break;

		case '?':
			usage();
			exit(0);

		default:
			ok = FALSE;
			break;
		}
	}
	if (!ok) {
		usage();
		exit(1);
	}
	if (optind == argc) {
		fpIn = stdin;
		doit();
	} else {
		for (; optind < argc; optind++) {
			fpIn = fopen(argv[optind], "r");
			if (fpIn == NULL) {
				(void) fprintf(stderr, "can\'t open \"%s\" for reading\n",
						argv[optind]);
				exit(1);
			} else {
				doit();
				fclose(fpIn);
			}
		}
	}
	exit(0);
}

static void doit()
{
	int i, lgN, nInterp;
	double x, *y, yNew;
	doublearray1d yRefined;
	char type[20];
	waveletfilter *wfltr = NULL;

	if (n <= 1) {
		/* count values */
		y = NULL;
		n = 0;
		while (fscanf(fpIn, "%lf", &yNew) == 1) {
			VOID_MR_ALLOC_LINTOK(y, n+1, double);
			y[n++] = yNew;
		}
	} else {
		(void) MALLOC_LINTOK(y, n, double);
		for (i = 0; i < n; i++) {
			if (fscanf(fpIn, "%lf", &y[i]) != 1) {
				(void) fprintf(stderr, "unexpected EOF -- exiting\n");
				exit(1);
			}
		}
	}
	for (lgN = 0; (1 << lgN) < n; lgN++)
		continue;
	if ((1 << lgN) != n) {
		(void) fprintf(stderr, "# of points must be a power of 2 -- exiting\n");
		exit(1);
	}
		

	switch (ftyp) {

	case FTYP_BATTLE:
		wfltr = &wfltrBattleLemarie;
		(void) strcpy(type, "BATTLE-LEMARIE");
		break;

	case FTYP_BURT:
		wfltr = &wfltrBurtAdelson;
		(void) strcpy(type, "BURT-ADELSON");
		break;

	case FTYP_COIFLET:
		switch (orderCoif) {

		case 2:
			wfltr = &wfltrCoiflet_2;
			break;

		case 4:
			wfltr = &wfltrCoiflet_4;
			break;

		case 6:
			wfltr = &wfltrCoiflet_6;
			break;

		default:
			NOT_REACHED;
		}
		(void) sprintf(type, "COIFLET%d", orderCoif);
		break;

	case FTYP_DAUB:
		switch (orderDaub) {

		case 4:
			wfltr = &wfltrDaubechies_4;
			break;

		case 6:
			wfltr = &wfltrDaubechies_6;
			break;

		case 8:
			wfltr = &wfltrDaubechies_8;
			break;

		case 10:
			wfltr = &wfltrDaubechies_10;
			break;

		case 12:
			wfltr = &wfltrDaubechies_12;
			break;

		case 20:
			wfltr = &wfltrDaubechies_20;
			break;

		default:
			NOT_REACHED;
		}
		(void) sprintf(type, "DAUB%d", orderDaub);
		break;

	case FTYP_HAAR:
		wfltr = &wfltrHaar;
		(void) strcpy(type, "HAAR");
		break;

	case FTYP_PSCOIFLET:
		wfltr = &wfltrPseudocoiflet_4_4;
		(void) strcpy(type, "PSEUDOCOIFLET");
		break;

	case FTYP_SPLINE:
		if (STR_EQ(orderSpline, "2,2"))
			wfltr = &wfltrSpline_2_2;
		else if (STR_EQ(orderSpline, "2,4"))
			wfltr = &wfltrSpline_2_4;
		else if (STR_EQ(orderSpline, "3,3"))
			wfltr = &wfltrSpline_3_3;
		else {
			assert(STR_EQ(orderSpline, "3,7"));
			wfltr = &wfltrSpline_3_7;
		}
		(void) sprintf(type, "SPLINE%d", orderSpline);
		break;

	default:
		NOT_REACHED;
	}

	if (wfltr == NULL) {
		(void) fprintf(stderr,
				"requested filter \"%s\" not yet supported -- exiting\n",
				type);
		exit(1);
	}

	if (exchangeCoeffs)
		wfltr_exchange(wfltr, wfltr);

	/* override offsets, if requested */
	if (overrideOffsets) {
		wfltr->offH = offH;
		wfltr->offG = offG;
		wfltr->offHtilde = offHtilde;
		wfltr->offGtilde = offGtilde;
	}

	nInterp = fInterp * n;
	if (ndim <= 0) {
		yRefined = da1d_new(nInterp);
		wrefine_da1d(y, n, nInterp, wfltr, yRefined);
	} else {
#ifdef ND_REFINEMENT_SUPPORTED
		wrefine_dand(y, nOfDim, ndim, nOfDimNew, wfltr, yRefined);
#else
		yRefined = NULL;	/* shut lint up */
#endif
	}

	switch (ofmt) {

	case OFMT_GNUPLOT:
		(void) printf("# wavelet (%s) interpolation\n", type);
		(void) printf("%10.6f %10.6f\n", 0.0, yRefined[0]);
		for (i = 1; i < nInterp; i++) {
			if (yRefined[i-1] != yRefined[i]) {
				x = RATIO(i, fInterp);
				(void) printf("%10.6f %10.6f\n", x, yRefined[i-1]);
				(void) printf("%10.6f %10.6f\n", x, yRefined[i]);
			}
		}
		(void) printf("%10.6f %10.6f\n", (double) n, yRefined[nInterp - 1]);
		break;

	case OFMT_NORMAL:
		for (i = 0; i < nInterp; i++)
			(void) printf("%f\n", yRefined[i]);
		break;

	case OFMT_TWOCOLUMN:
		for (i = 0; i < nInterp; i++)
			(void) printf("%f %f\n", RATIO(i, fInterp), yRefined[i]);
		break;

	case OFMT_XGRAPH:
		(void) printf("\"wavelet (%s) interpolation\n", type);
		(void) printf("%10.6f %10.6f\n", 0.0, yRefined[0]);
		for (i = 1; i < nInterp; i++) {
			if (yRefined[i-1] != yRefined[i]) {
				x = RATIO(i, fInterp);
				(void) printf("%10.6f %10.6f\n", x, yRefined[i-1]);
				(void) printf("%10.6f %10.6f\n", x, yRefined[i]);
			}
		}
		(void) printf("%10.6f %10.6f\n", (double) n, yRefined[nInterp - 1]);
		break;

	default:
		NOT_REACHED;
	}

	da1d_delete(yRefined);
	FREE_LINTOK(y);

	return;
}

/* usage: issue a usage error message */
static void usage()
{
	(void) fprintf(stderr,
			"usage: %s [{args}] [{data file name}]\n", progname);
	(void) fprintf(stderr, "%s\n",
			" {args} are:");
	(void) fprintf(stderr, "%s\n",
			"  -A {#}         use Burt-Adelson basis");
	(void) fprintf(stderr, "%s\n",
			"  -B {#}         use Battle-Lemarie basis");
	(void) fprintf(stderr, "%s\n",
			"  -D {#}         use Daubechies order {#} (= 4, 6, 8, 10, 12, or 20) basis");
	(void) fprintf(stderr, "%s\n",
			"  -e             exchange normal and tilde components");
	(void) fprintf(stderr, "%s\n",
			"  -f {#}         interpolate by a factor of {#} (must be power of 2)");
	(void) fprintf(stderr, "%s\n",
			"  -g             output data in a format suitable for \"gnuplot\" input");
	(void) fprintf(stderr, "%s\n",
			"  -H {#}         use Haar basis (default)");
#ifdef ND_REFINEMENT_SUPPORTED
	(void) fprintf(stderr, "%s\n",
			"  -m {#}[,{#}]*  interpret data as multidimensional with {#}[,{#}]* extents");
#endif
	(void) fprintf(stderr, "%s\n",
			"  -n {#}         there are {#} points in (1-D) input");
	(void) fprintf(stderr, "%s\n",
			"  -o {#}[,{#}[,{#}[,{#}]]]   override intrinsic H, G, Htilde, and Gtilde");
	(void) fprintf(stderr, "%s\n",
			"                   filter offsets to {#}, {#}, {#}, and {#}");
	(void) fprintf(stderr, "%s\n",
			"                   (with reasonable defaults)");
	(void) fprintf(stderr, "%s\n",
			"  -S {#}         use Spline order {#} (= \"2,2\", \"2,4\", \"3,3\", or \"3,7\")");
	(void) fprintf(stderr, "%s\n",
			"  -x             output data in a format suitable for \"xgraph\" input");
	(void) fprintf(stderr, "%s\n",
			"  -?             this message");
	return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲天堂免费看| 成人av免费在线播放| 国产精品电影一区二区三区| 欧美久久婷婷综合色| 99re热这里只有精品免费视频| 国产一区二区在线免费观看| 亚洲成a人v欧美综合天堂| 亚洲免费av高清| 亚洲婷婷在线视频| 中国色在线观看另类| 国产三区在线成人av| 337p日本欧洲亚洲大胆精品| 欧美一级欧美一级在线播放| 日韩视频免费观看高清完整版在线观看 | 麻豆精品在线观看| 国产精品乱子久久久久| 日韩免费看的电影| 337p亚洲精品色噜噜狠狠| 色国产综合视频| 在线观看欧美黄色| 欧美精品tushy高清| 99精品久久久久久| 成人晚上爱看视频| 久久99国产精品久久99| 国产美女在线精品| 成人免费毛片a| 91日韩一区二区三区| 欧美在线一二三| 91精品在线麻豆| 欧美刺激脚交jootjob| 国产午夜精品一区二区| 1000部国产精品成人观看| 日韩理论片一区二区| 樱桃视频在线观看一区| 日本午夜一本久久久综合| 久久不见久久见免费视频1| 国产一区二区三区在线观看免费| 国内精品伊人久久久久影院对白| 国产99久久久国产精品潘金网站| 91在线无精精品入口| 一本色道久久综合亚洲aⅴ蜜桃| 欧美精三区欧美精三区| 精品国产乱码久久久久久夜甘婷婷| 久久亚洲春色中文字幕久久久| 国产精品久久久99| 亚洲午夜成aⅴ人片| 九九在线精品视频| 91蜜桃网址入口| 欧美大片在线观看一区二区| 国产精品视频第一区| 亚洲在线视频一区| 国产精品夜夜爽| 欧洲av在线精品| 久久精品欧美一区二区三区麻豆 | 国产欧美视频一区二区三区| 欧美激情一区不卡| 日韩中文字幕区一区有砖一区| 国产一区亚洲一区| 欧美三级乱人伦电影| 2023国产精品自拍| 亚洲高清中文字幕| 成人永久免费视频| 欧美一区二区三区人| 亚洲美女在线国产| 国产成人福利片| 欧美精品精品一区| 亚洲精品中文在线| 国产精品12区| 欧美一区二区大片| 亚洲夂夂婷婷色拍ww47| 99久久综合色| 久久久欧美精品sm网站| 美国十次综合导航| 欧洲亚洲精品在线| 国产精品欧美精品| 成人午夜私人影院| 国产三级欧美三级日产三级99| 日韩精品91亚洲二区在线观看| 99久久精品国产精品久久| 久久久久久久久岛国免费| 夜夜亚洲天天久久| jizz一区二区| 国产精品短视频| 不卡一区二区在线| 91精品国产一区二区三区香蕉| 视频一区在线播放| av电影在线观看完整版一区二区| 久久这里只有精品首页| 亚洲一区电影777| 在线亚洲一区二区| 亚洲自拍偷拍图区| 欧美日韩dvd在线观看| 午夜伦欧美伦电影理论片| 欧美在线啊v一区| 亚洲男人电影天堂| 99精品久久只有精品| 自拍偷拍欧美激情| 色婷婷综合久久久久中文 | 成人美女在线视频| 日韩美女天天操| 蜜臀精品一区二区三区在线观看| 日韩欧美中文字幕制服| 亚洲欧洲无码一区二区三区| 一本到三区不卡视频| 亚洲风情在线资源站| 欧美三片在线视频观看| 日本三级亚洲精品| 日韩美女一区二区三区| 国内精品写真在线观看| 国产清纯白嫩初高生在线观看91 | 丰满岳乱妇一区二区三区| 欧美激情在线免费观看| 99精品视频中文字幕| 亚洲一区二区三区小说| 欧美va亚洲va| 国产成人鲁色资源国产91色综| 中文一区一区三区高中清不卡| 在线日韩av片| 美日韩一区二区三区| 欧美高清在线精品一区| 欧美亚洲国产bt| 久久成人免费网| 亚洲激情图片小说视频| 日韩你懂的在线观看| 成人av资源在线| 日本不卡的三区四区五区| 国产午夜精品理论片a级大结局| 99re视频这里只有精品| 久久精品噜噜噜成人88aⅴ| 亚洲欧洲性图库| 精品av综合导航| 91黄色免费观看| 国产成人午夜精品影院观看视频| 亚洲欧美一区二区久久 | 一区二区三区四区高清精品免费观看| 在线看不卡av| 懂色av一区二区夜夜嗨| 婷婷综合久久一区二区三区| 国产精品免费av| 欧美亚洲国产一区在线观看网站| 国产美女久久久久| 一区二区三区欧美激情| 国产亚洲一区二区在线观看| 欧美日韩国产首页| 成人激情校园春色| 国产一区二区三区四区五区入口| 亚洲综合视频在线| 中文字幕日韩精品一区| 国产香蕉久久精品综合网| 欧美一区二区福利在线| 在线观看精品一区| 不卡视频免费播放| 国产美女一区二区三区| 久久激情五月激情| 日韩福利电影在线观看| 亚洲国产日韩在线一区模特 | 国产黄色91视频| 亚洲黄色av一区| 国产日韩精品一区二区三区| 日韩精品一区二区在线观看| 欧美无人高清视频在线观看| 91小视频免费观看| 狠狠狠色丁香婷婷综合久久五月| 亚洲黄一区二区三区| 国产欧美日韩麻豆91| 国产无遮挡一区二区三区毛片日本| 欧美成人a视频| 26uuuu精品一区二区| 国产欧美日韩视频在线观看| 日本一区二区三级电影在线观看| 精品国产91洋老外米糕| 久久免费精品国产久精品久久久久| 欧美成人精精品一区二区频| 精品国产乱码久久| 久久精品一区二区三区不卡牛牛| 久久综合av免费| 国产精品久久久久久久久免费相片| 国产欧美一区二区精品仙草咪 | 欧美日韩精品三区| 欧美一级久久久| 久久久久免费观看| 亚洲人成亚洲人成在线观看图片 | 日韩精品一区国产麻豆| 国产精品久久久久久久裸模| 丝袜美腿亚洲一区二区图片| 成人黄色综合网站| 欧美精品少妇一区二区三区| 精品第一国产综合精品aⅴ| 亚洲品质自拍视频| 激情五月激情综合网| 色综合网站在线| 久久久久9999亚洲精品| 亚洲国产一区二区a毛片| 国产盗摄精品一区二区三区在线 | 精品免费视频一区二区| 一区二区在线免费| 成人免费视频视频在线观看免费| 欧美日韩在线亚洲一区蜜芽| 国产精品天天看| 国内外成人在线|