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

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

?? svm_model_matlab.c

?? libsvm-demo,支持向量機的演示程序,對初學者很有用!
?? C
字號:
#include <stdlib.h>#include <string.h>#include "svm.h"#include "mex.h"#define NUM_OF_RETURN_FIELD 10static const char *field_names[] = {	"Parameters",	"nr_class",	"totalSV",	"rho",	"Label",	"ProbA",	"ProbB",	"nSV",	"sv_coef",	"SVs"};const char *model_to_matlab_structure(mxArray *plhs[], int num_of_feature, struct svm_model *model){	int i, j, n;	double *ptr;	mxArray *return_model, **rhs;	int out_id = 0;	rhs = (mxArray **)mxMalloc(sizeof(mxArray *)*NUM_OF_RETURN_FIELD);	// Parameters	rhs[out_id] = mxCreateDoubleMatrix(5, 1, mxREAL);	ptr = mxGetPr(rhs[out_id]);	ptr[0] = model->param.svm_type;	ptr[1] = model->param.kernel_type;	ptr[2] = model->param.degree;	ptr[3] = model->param.gamma;	ptr[4] = model->param.coef0;	out_id++;	// nr_class	rhs[out_id] = mxCreateDoubleMatrix(1, 1, mxREAL);	ptr = mxGetPr(rhs[out_id]);	ptr[0] = model->nr_class;	out_id++;	// total SV	rhs[out_id] = mxCreateDoubleMatrix(1, 1, mxREAL);	ptr = mxGetPr(rhs[out_id]);	ptr[0] = model->l;	out_id++;	// rho	n = model->nr_class*(model->nr_class-1)/2;	rhs[out_id] = mxCreateDoubleMatrix(n, 1, mxREAL);	ptr = mxGetPr(rhs[out_id]);	for(i = 0; i < n; i++)		ptr[i] = model->rho[i];	out_id++;	// Label	if(model->label)	{		rhs[out_id] = mxCreateDoubleMatrix(model->nr_class, 1, mxREAL);		ptr = mxGetPr(rhs[out_id]);		for(i = 0; i < model->nr_class; i++)			ptr[i] = model->label[i];	}	else		rhs[out_id] = mxCreateDoubleMatrix(0, 0, mxREAL);	out_id++;	// probA, probB	if(model->probA != NULL && model->probB != NULL)	{		rhs[out_id] = mxCreateDoubleMatrix(n, 1, mxREAL);		ptr = mxGetPr(rhs[out_id]);		for(i = 0; i < n; i++)			ptr[i] = model->probA[i];		rhs[out_id+1] = mxCreateDoubleMatrix(n, 1, mxREAL);		ptr = mxGetPr(rhs[out_id+1]);		for(i = 0; i < n; i++)			ptr[i] = model->probB[i];	}	else	{		rhs[out_id] = mxCreateDoubleMatrix(0, 0, mxREAL);		rhs[out_id+1] = mxCreateDoubleMatrix(0, 0, mxREAL);	}	out_id+=2;	// nSV	if(model->nSV)	{		rhs[out_id] = mxCreateDoubleMatrix(model->nr_class, 1, mxREAL);		ptr = mxGetPr(rhs[out_id]);		for(i = 0; i < model->nr_class; i++)			ptr[i] = model->nSV[i];	}	else		rhs[out_id] = mxCreateDoubleMatrix(0, 0, mxREAL);	out_id++;	// sv_coef	rhs[out_id] = mxCreateDoubleMatrix(model->l, model->nr_class-1, mxREAL);	ptr = mxGetPr(rhs[out_id]);	for(i = 0; i < model->nr_class-1; i++)		for(j = 0; j < model->l; j++)			ptr[(i*(model->l))+j] = model->sv_coef[i][j];	out_id++;	// SVs	{		int *ir, *jc, ir_index, nonzero_element;		mxArray *pprhs[1], *pplhs[1];			nonzero_element = 0;		for(i = 0; i < model->l; i++) {			j = 0;			while(model->SV[i][j].index != -1) {				nonzero_element++;				j++;			}		}		// SV in column, easier accessing		rhs[out_id] = mxCreateSparse(num_of_feature, model->l, nonzero_element, mxREAL);		ir = mxGetIr(rhs[out_id]);		jc = mxGetJc(rhs[out_id]);		ptr = mxGetPr(rhs[out_id]);		ir_index = jc[0] = 0;		for(i = 0;i < model->l; i++)		{			int x_index = 0;			while (model->SV[i][x_index].index != -1)			{				ir[ir_index] = model->SV[i][x_index].index - 1; 				ptr[ir_index] = model->SV[i][x_index].value;				ir_index++, x_index++;			}			jc[i+1] = jc[i] + x_index;		}		// transpose back to SV in row		pprhs[0] = rhs[out_id];		if (mexCallMATLAB(1, pplhs, 1, pprhs, "transpose"))			return "cannot transpose SV matrix";		rhs[out_id] = pplhs[0];		out_id++;	}	/* Create a struct matrix contains NUM_OF_RETURN_FIELD fields */	return_model = mxCreateStructMatrix(1, 1, NUM_OF_RETURN_FIELD, field_names);	/* Fill struct matrix with input arguments */	for(i = 0; i < NUM_OF_RETURN_FIELD; i++)		mxSetField(return_model,0,field_names[i],mxDuplicateArray(rhs[i]));	/* return */	plhs[0] = return_model;	mxFree(rhs);	return NULL;}const char *matlab_matrix_to_model(struct svm_model *model, const mxArray *matlab_struct){	int i, j, n, num_of_fields;	double *ptr;	int id = 0;	struct svm_node *x_space;	mxArray **rhs;	num_of_fields = mxGetNumberOfFields(matlab_struct);	rhs = (mxArray **) mxMalloc(sizeof(mxArray *)*num_of_fields);	for(i=0;i<num_of_fields;i++)		rhs[i] = mxGetFieldByNumber(matlab_struct, 0, i);	model->rho = NULL;	model->probA = NULL;	model->probB = NULL;	model->label = NULL;	model->nSV = NULL;	model->free_sv = 1; // XXX	ptr = mxGetPr(rhs[id]);	model->param.svm_type	  = (int)ptr[0];	model->param.kernel_type  = (int)ptr[1];	model->param.degree	  = ptr[2];	model->param.gamma	  = ptr[3];	model->param.coef0	  = ptr[4];	id++;	ptr = mxGetPr(rhs[id]);	model->nr_class = (int)ptr[0];	id++;	ptr = mxGetPr(rhs[id]);	model->l = (int)ptr[0];	id++;	// rho	n = model->nr_class * (model->nr_class-1)/2;	model->rho = (double*) malloc(n*sizeof(double));	ptr = mxGetPr(rhs[id]);	for(i=0;i<n;i++)		model->rho[i] = ptr[i];	id++;	// label	if (mxIsEmpty(rhs[id]) == 0)	{		model->label = (int*) malloc(model->nr_class*sizeof(int));		ptr = mxGetPr(rhs[id]);		for(i=0;i<model->nr_class;i++)			model->label[i] = (int)ptr[i];	}	id++;	// probA, probB	if(mxIsEmpty(rhs[id]) == 0 &&	   mxIsEmpty(rhs[id+1]) == 0)	{		model->probA = (double*) malloc(n*sizeof(double));		model->probB = (double*) malloc(n*sizeof(double));		ptr = mxGetPr(rhs[id]);		for(i=0;i<n;i++)			model->probA[i] = ptr[i];		ptr = mxGetPr(rhs[id+1]);		for(i=0;i<n;i++)			model->probB[i] = ptr[i];	}	id += 2;	// nSV	if (mxIsEmpty(rhs[id]) == 0)	{		model->nSV = (int*) malloc(model->nr_class*sizeof(int));		ptr = mxGetPr(rhs[id]);		for(i=0;i<model->nr_class;i++)			model->nSV[i] = (int)ptr[i];	}	id++;	// sv_coef	ptr = mxGetPr(rhs[id]);	model->sv_coef = (double**) malloc((model->nr_class-1)*sizeof(double));	for( i=0 ; i< model->nr_class -1 ; i++ )		model->sv_coef[i] = (double*) malloc((model->l)*sizeof(double));	for(i = 0; i < model->nr_class - 1; i++)		for(j = 0; j < model->l; j++)			model->sv_coef[i][j] = ptr[i*(model->l)+j];	id++;	// SV	{		int sr, sc, elements;		int num_samples;		int *ir, *jc;		mxArray *pprhs[1], *pplhs[1];		// transpose SV		pprhs[0] = rhs[id];		if (mexCallMATLAB(1, pplhs, 1, pprhs, "transpose"))			return "cannot transpose SV matrix";		rhs[id] = pplhs[0];		sr = mxGetN(rhs[id]);		sc = mxGetM(rhs[id]);		ptr = mxGetPr(rhs[id]);		ir = mxGetIr(rhs[id]);		jc = mxGetJc(rhs[id]);		num_samples = mxGetNzmax(rhs[id]);		elements = num_samples + sr;		model->SV = (struct svm_node **) malloc(sr * sizeof(struct svm_node *));		x_space = (struct svm_node *)malloc(elements * sizeof(struct svm_node));		// SV is in column		for(i=0;i<sr;i++)		{			int low = jc[i], high = jc[i+1];			int x_index = 0;			model->SV[i] = &x_space[low+i];			for(j=low;j<high;j++)			{				model->SV[i][x_index].index = ir[j] + 1; 				model->SV[i][x_index].value = ptr[j];				x_index++;			}			model->SV[i][x_index].index = -1;		}		id++;	}	mxFree(rhs);	return NULL;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区二区三区在线看| 日韩精品一区二区三区在线| 欧美日韩1区2区| 久久久久综合网| 日韩**一区毛片| 欧美在线视频全部完| 国产日韩欧美高清在线| 日韩成人午夜精品| 欧美视频一区二区三区| **欧美大码日韩| 国产成人精品一区二区三区网站观看| 精品视频999| 亚洲黄色av一区| 91视视频在线直接观看在线看网页在线看| 日韩西西人体444www| 亚洲成人免费在线| 色哟哟亚洲精品| 一色桃子久久精品亚洲| 成人av网在线| 国产精品乱码妇女bbbb| 国产91精品露脸国语对白| 久久久不卡影院| 国产乱码精品一区二区三区忘忧草| 欧美一级日韩免费不卡| 亚洲电影视频在线| 欧美三区在线观看| 午夜精品免费在线| 欧美一区二区三区性视频| 日韩成人免费在线| 日韩欧美你懂的| 国精品**一区二区三区在线蜜桃| 91精品久久久久久久99蜜桃| 日本不卡视频在线| 欧美mv日韩mv国产网站app| 麻豆国产一区二区| 久久亚洲精品国产精品紫薇| 国产一本一道久久香蕉| 国产欧美日韩在线视频| 91在线观看下载| 亚洲与欧洲av电影| 日韩三级免费观看| 狠狠色狠狠色合久久伊人| 国产日韩精品一区二区三区在线| 成人a级免费电影| 亚洲少妇中出一区| 6080国产精品一区二区| 久久99精品一区二区三区| 久久精品亚洲乱码伦伦中文| 国产福利91精品| 一区二区三区中文在线| 欧美日韩高清一区二区不卡| 免费高清在线一区| 日本一区二区高清| 在线视频观看一区| 免费视频最近日韩| 亚洲欧美综合网| 91精品国产欧美一区二区18| 国产一区二区在线电影| 亚洲欧美影音先锋| 91精品久久久久久久91蜜桃| 国产精品99久久久久| 亚洲自拍都市欧美小说| 精品毛片乱码1区2区3区| 99精品欧美一区二区蜜桃免费| 天堂av在线一区| 欧美国产日韩一二三区| 欧美日韩在线观看一区二区 | 中文字幕一区二区三区不卡在线| 色婷婷av一区二区三区软件| 久久激情综合网| 亚洲欧洲精品一区二区三区| 日韩女优av电影在线观看| 91丨九色丨尤物| 美女一区二区在线观看| 久久精品人人做人人爽人人| 欧美三级蜜桃2在线观看| 国产成人免费在线观看不卡| 亚洲一二三四久久| 欧美经典一区二区三区| 日韩亚洲欧美在线| 色8久久精品久久久久久蜜| 韩国欧美国产一区| 日韩二区三区四区| 亚洲一区二区三区在线| 亚洲国产精品成人综合| 欧美成人一区二区| 欧美日本一区二区三区| 91麻豆国产自产在线观看| 国产精品77777| 久久精品国产亚洲aⅴ| 亚洲va欧美va国产va天堂影院| 国产精品美日韩| 久久中文字幕电影| 日韩欧美亚洲一区二区| 91精品婷婷国产综合久久性色| 91在线高清观看| 成人av动漫网站| 国产曰批免费观看久久久| 蜜臀国产一区二区三区在线播放| 亚洲一区在线观看免费| 日韩毛片精品高清免费| 国产精品视频yy9299一区| 国产清纯美女被跳蛋高潮一区二区久久w | 国产偷国产偷精品高清尤物 | 久久国产精品免费| 日本在线不卡视频| 亚洲成人手机在线| 亚洲国产综合视频在线观看| 亚洲乱码一区二区三区在线观看| 欧美—级在线免费片| 欧美精品一区二区三区高清aⅴ| 精品婷婷伊人一区三区三| 欧美最新大片在线看| 色婷婷久久久综合中文字幕| 色婷婷国产精品综合在线观看| av电影天堂一区二区在线| 波多野结衣中文字幕一区二区三区| 国产成人精品一区二区三区网站观看| 国产精品一卡二卡在线观看| 久久se精品一区精品二区| 久久精品久久99精品久久| 麻豆成人久久精品二区三区小说| 日本免费新一区视频| 国产在线精品视频| 大胆亚洲人体视频| 91亚洲精品久久久蜜桃网站| 在线这里只有精品| 欧美久久久久久蜜桃| 91精品国产日韩91久久久久久| 日韩精品一区二区三区视频播放 | 久久亚洲影视婷婷| 国产日韩欧美综合在线| 国产精品福利在线播放| 亚洲欧洲日韩在线| 午夜久久电影网| 国产美女精品人人做人人爽| 波多野结衣视频一区| 欧美色爱综合网| 26uuu国产电影一区二区| 国产精品护士白丝一区av| 亚洲黄一区二区三区| 日本美女一区二区三区视频| 国产美女视频一区| 91黄色免费看| 精品免费日韩av| 亚洲欧洲韩国日本视频| 日本一不卡视频| 成人a级免费电影| 69久久夜色精品国产69蝌蚪网| 久久久国产精品不卡| 一二三四区精品视频| 国产制服丝袜一区| 在线观看日韩精品| 久久精品免费在线观看| 亚洲国产aⅴ成人精品无吗| 国产一区二区久久| 91国偷自产一区二区三区成为亚洲经典| 884aa四虎影成人精品一区| 中文字幕av资源一区| 日韩激情一区二区| 色哟哟欧美精品| 久久久九九九九| 日韩一区精品字幕| 99精品视频在线播放观看| 欧美一二三区在线| 一区二区高清免费观看影视大全| 国产精品一二三| 日韩一区二区三区视频在线| 一区二区三区在线视频观看58| 精品影视av免费| 欧美久久久久免费| 亚洲综合小说图片| 成人h精品动漫一区二区三区| 日韩亚洲国产中文字幕欧美| 一区二区三区欧美日韩| 国产精品一二三区| 欧美精品一区二区三区一线天视频 | 91亚洲精品久久久蜜桃| 久久先锋资源网| 美女在线一区二区| 欧美女孩性生活视频| 亚洲一区在线免费观看| 99精品视频一区| 国产精品女同一区二区三区| 激情综合色综合久久| 69久久夜色精品国产69蝌蚪网| 亚洲一区二区高清| 在线视频欧美精品| 亚洲欧美日韩久久精品| 91色在线porny| 国产精品成人在线观看| 成人一道本在线| 国产精品少妇自拍| 99re66热这里只有精品3直播| 国产欧美一二三区| 波多野结衣在线一区| 成人免费一区二区三区在线观看| 国产福利精品一区| 亚洲欧洲日产国码二区| 色94色欧美sute亚洲线路一久 |