在CMamke生成的VS项目中插入程序

  1. 在主文件夹的CMakeLists.tex中加入SET(COMPILE_WITH_LSVM OFF CACHE BOOL "Compile with LSVM")
    在这里插入图片描述
    再添加IF(COMPILE_WITH_LSVM) MESSAGE("Compiling with: LSVM") ADD_DEFINITIONS(-DCOMPILE_WITH_LSVM) ADD_SUBDIRECTORY(LSVM) LIST(APPEND SRC LSVM_wrapper.h LSVM_wrapper.cpp) ENDIF()

请添加图片描述
之后再按CMake添加程序
把该加的都加进主文件夹和子文件夹中的CMakeLists.tex里
都加好之后再用Cmake congfigure就会出现我们新加的程序,在value列上打上对号,再congfigure
在这里插入图片描述

  1. 在VS中添加
    一个头文件:LSVM_wrapper.h
#pragma once#include "svm_template.h"class LSVMData : public SvmData
{
public:int Load(char *filename, SVM_FILE_TYPE file_type, SVM_DATA_TYPE data_type);
};class LSVMModel : public SvmModel
{
public:int Train(SvmData *data, struct svm_params * params, struct svm_trainingInfo *trainingInfo);int StoreModel(char *model_file_name, SVM_MODEL_FILE_TYPE type);
};

和一个源文件:LSVM_wrapper.cpp

#include "ohdSVM_wrapper.h"
#include "OHD-SVM/ohdSVM.h"
#include "utils.h"
#include <string>extern int g_ws_size;
extern std::string g_imp_spec_arg;int ohdSVMData::Load(char *filename, SVM_FILE_TYPE file_type, SVM_DATA_TYPE data_type)
{svm_memory_dataformat req_data_format;req_data_format.allocate_pinned = false;req_data_format.allocate_write_combined = false;req_data_format.dimAlignment = 32;req_data_format.vectAlignment = 32;req_data_format.transposed = false;req_data_format.labelsInFloat = true;req_data_format.supported_types = SUPPORTED_FORMAT_DENSE | SUPPORTED_FORMAT_CSR;  //no sparse yetSAFE_CALL(SvmData::Load(filename, file_type, data_type, &req_data_format));//filename=argv[1]=a9a.txt,file_type = LASVM_BINARYreturn SUCCESS;
}int ohdSVMModel::Train(SvmData *data, struct svm_params * params, struct svm_trainingInfo *trainingInfo)
{this->data = data;this->params = params;alphas = (float *)malloc(data->GetNumVects() * sizeof(float));float rho = 0;try{size_t pos = g_imp_spec_arg.find(',');if (pos != std::string::npos){int sliceSize = atoi(g_imp_spec_arg.c_str());int threadsPerRow = atoi(g_imp_spec_arg.c_str() + pos + 1);ohdSVM::useEllRT(true, sliceSize, threadsPerRow);}bool is_sparse = data->GetDataType() == SVM_DATA_TYPE::SPARSE;ohdSVM::Data x;if (is_sparse)x.sparse = (ohdSVM::csr *)data->GetDataSparsePointer();elsex.dense = data->GetDataDensePointer();ohdSVM::Train(alphas, &rho, is_sparse, x, (const float *)data->GetVectorLabelsPointer(),data->GetNumVects(), data->GetNumVectsAligned(),data->GetDimVects(), data->GetDimVectsAligned(),params->C, params->gamma, params->eps, g_ws_size);}catch (std::exception & e){std::cerr << "Exception in OHD-SVM: " << e.what() << std::endl;}params->rho = rho;SAFE_CALL(CalculateSupperVectorCounts());return SUCCESS;
}int ohdSVMModel::StoreModel(char *model_file_name, SVM_MODEL_FILE_TYPE type)
{return StoreModelGeneric(model_file_name, type);
}

请添加图片描述

  1. 在svm-train.cpp中加入
#ifdef COMPILE_WITH_LSVM
#include "LSVM_wrapper.h"
#endif

请添加图片描述
添加

	#ifdef COMPILE_WITH_LSVMcase 17:printf("Using LSVM...\n\n");data = new LSVMData;model = new LSVMModel;return SUCCESS;
#endif

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/34134.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是CSS Grid布局?什么是Flexbox布局?它们两者有什么不同?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ CSS Grid布局⭐ Flexbox布局⭐ 不同之处⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web…

vuejs 设计与实现 - 渲染器 - 挂载与更新

渲染器的核心功能:挂载与更新 1.挂载子节点和元素的属性 1.2挂载子节点 (vnode.children) vnode.children可以是字符串类型的&#xff0c;也可以是数组类型的&#xff0c;如下&#xff1a; const vnode {type: div,children: [{type: p,children: hello}] } 可以看到&#…

预测知识 | 神经网络、机器学习、深度学习

预测知识 | 预测技术流程及模型评价 目录 预测知识 | 预测技术流程及模型评价神经网络机器学习深度学习参考资料 神经网络 神经网络&#xff08;neural network&#xff09;是机器学习的一个重要分支&#xff0c;也是深度学习的核心算法。神经网络的名字和结构&#xff0c;源自…

vue-拦截器

第一步 起步 | Axios 中文文档 | Axios 中文网 安装 npm install axios ​ ​​​​​​ ​ ​ 第二步 ​ ​ 所有的请求都叫http协议 ​ ​ ​ ​ ​ 第三步 ​ 导入后即可使用里面的方法 ​ 任何一个东西都可以导出 ​ ​ 只有一个的时候只需要用defau…

PHP证券交易员学习网站mysql数据库web结构apache计算机软件工程网页wamp

一、源码特点 PHP证券交易员学习网站 是一套完善的web设计系统&#xff0c;对理解php编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。 下载地址https://download.csdn.net/download/qq_41221322/88205549 PHP证券交易员…

神码ai伪原创【php源码】

这篇文章主要介绍了python下载后在哪打开&#xff0c;具有一定借鉴价值&#xff0c;需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获&#xff0c;下面让小编带着大家一起了解一下。 火车头采集ai伪原创插件截图&#xff1a; https://www.python.org/ftp/python/3.9.5…

Hadoop理论及实践-HDFS四大组件关系(参考Hadoop官网)

NameNode&#xff08;名称节点&#xff0c;Master主节点&#xff09; NameNode主要功能 1、NameNode负责管理HDFS文件系统的元数据&#xff0c;包括文件&#xff0c;目录&#xff0c;块信息等。它将元数据Fsimage与Edit_log持久化到硬盘上。一个是Fsimage(镜像文件&#xff09…

Web 服务器 -【Tomcat】的简单学习

Tomcat1 简介1.1 什么是Web服务器 2 基本使用2.1 下载2.2 安装2.3 卸载2.4 启动2.5 关闭2.6 配置2.7 部署 3 Maven创建Web项目3.1 Web项目结构3.2 创建Maven Web项目 4 IDEA使用Tomcat4.1 集成本地Tomcat4.2 Tomcat Maven插件 Tomcat 1 简介 1.1 什么是Web服务器 Web服务器是…

父进程等待子进程退出 / 僵尸进程孤儿进程

Q&#xff1a;父进程为什么要等待子进程退出&#xff1f; A&#xff1a;回顾创建子进程的目的&#xff0c;就是让子进程去处理一些事情&#xff0c;那么“事情干完了没有”这件事&#xff0c;父进程需要知道并收集子进程的退出状态。子进程的退出状态如果不被收集&#xff0c;…

30、Flink SQL之SQL 客户端(通过kafka和filesystem的例子介绍了配置文件使用-表、视图等)

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

iphone拷贝照片中间带E自动去重软件,以及java程序如何打包成jar和exe

文章目录 一、前提二、问题描述三、原始处理方式四、程序处理4.1 java程序如何打包exe4.1.1 首先打包jar4.1.2 开始生成exe4.1.3 软件使用方式 4.2 更换图标4.2.1 更换swing的打包jar图标4.2.2 更换exe图标 4.3 如何使生成的exe在没有java环境的电脑上运行4.3.1 Inno Setup打包…

el-select 动态添加多个下拉框

实现的效果如下: 主要的代码如下: 这是formdata 的结构 主要的逻辑 在这个 methods

Linux网络协议和管理

Linux网络协议和管理 一.网络设备基本知识 图1-网络设备基本知识 二.TCP/IP协议栈简介 1.概述 网络协议通常工作在不同的层中&#xff0c;每一层分别负责不同的通信功能。一个协议族&#xff0c; 比如T C P / I P&#xff0c;是一组不同层次上的多个协议的组合。T C P / I P通…

UVA-1601 万圣节后的早晨 题解答案代码 算法竞赛入门经典第二版

GitHub - jzplp/aoapc-UVA-Answer: 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版 以三个点的当前位置作为状态&#xff0c;广度优先遍历&#xff0c;找到终点即为最短次数。 注意&#xff1a; 一次可以移动多个点&#xff0c;但是每个点只能移动一步。在同一次中&#xf…

工单管理系统有什么优点?工单系统是如何提高企业服务质量和运营效率的?

工单管理系统是一款基于云平台打造的高效报修工单管理系统&#xff0c;为企业报修管理、维保流程优化和后勤决策分析提供全面支持。通过应用工单管理系统&#xff0c;企业能够轻松提升报修效率&#xff0c;降低人工成本&#xff0c;同时提高后勤管理的质量和效益。系统利用先进…

快速上手React:从概述到组件与事件处理

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

Java进阶(1)——JVM的内存分配 反射Class类的类对象 创建对象的几种方式 类加载(何时进入内存JVM) 注解 反射+注解的案例

目录 引出java内存分配java内存分布概略图堆方法区常量池 创建对象内存分配 反射class文件的底层类加载顺序1.检查2.开辟静态资源空间3.常量池4.其他...5.创建一个唯一的类的对象获取Class对象的几种方式 创建对象几种方式new 看到new : new Book()反射 Class.forName(“包名.类…

逆向破解学习-割绳子

试玩 支付失败&#xff0c;请检查网络设置 Hook成功 Hook代码 import android.app.Application; import android.content.Context;import de.robv.android.xposed.XC_MethodHook; import de.robv.android.xposed.XposedHelpers; import de.robv.android.xposed.callbacks.XC_…

vue2 封装 webSocket 开箱即用

第一步&#xff1a; 下载 webSocket npm install vue-native-websocket --save 第二步&#xff1a; 需要在 main.js 中 引入 import websocket from vue-native-websocket; Vue.use(websocket, , {connectManually: true, // 手动连接format: json, // json格式reconnection:…

SpringMVC的架构有什么优势?——表单和数据校验(四)

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…