如何在Python中调用C++的函数?DTW

一、问题

在 python 中执 DTW 算法,但是太慢,想到了用c++写该算法,再用python执行
先贴一张效果图,可以看出,同样一份 dtw 代码,python 和 C++ 有10倍多的差距。
在这里插入图片描述

二、C++ 写法

有很多种方法可以在python里执行c++代码,这里选一个我觉得最简单的。推荐使用vs,编译如下代码,注意选择生成dll,而不是exe。
我的函数原型是 :

double dtw(double* x, int x_size, double* y, int y_size)

头文件里需要声明:

//头文件 main.h
#pragma once
#include<Windows.h>
extern "C"
{
   
	__declspec(dllexport) double __cdecl dtw(double* x, int x_size, double* y, int y_size);
};

源文件里实现:

//源文件 main.cpp
#include "main.h"
#include <iostream>

double dtw(double* x, int x_size, double* y, int y_size)
{
   
    double** D0 = (double**)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值