[置顶] Python编程-混合编程(C++,python,opencv)实现
对于一个程序宅来说,一直有想法把C++,opencv,python结合起来,python的并发性优点,opencv的图像处理算法的优点,C++的灵活,然后就开始了下面的旅程:
配置版本:VS2008+Python2.7+OpenCV2.1.0
源码:
OpenCV2.1.0 sampes里面的Python例程camera.py:
将其放到VS2008的例子python的工程目录下:
然后就开始写代码了:
#include "stdafx.h" #include "python.h" #include <tchar.h> #define _AFXDLL #include "stdafx.h" #include <stdio.h> #include <string> #include <iostream> #include <fstream> #include <cstring> #include <afx.h> #include <iostream> using namespace std; #pragma comment (lib,"python27.lib") int test1() { Py_Initialize(); CString strPath; GetCurrentDirectory(MAX_PATH,strPath.GetBuffer(MAX_PATH)); char ch[BUFSIZ]; WideCharToMultiByte( CP_ACP, WC_COMPOSITECHECK, (strPath.GetBuffer(strPath.GetLength() + 1)), -1, ch, sizeof(ch), NULL, NULL ); ; strPath.ReleaseBuffer(); string tmpStr; cout << ch << endl; int len = strlen(ch); string fileName = "\\camera.py"; for( int i = 0; i < int(fileName.length()); i++) ch[len++] = fileName[i]; ch[len] = '\0'; cout << ch << endl; PyObject *pyfile = PyFile_FromString(ch,"r"); if(pyfile==NULL) { printf("exit 1"); system("pause"); return 1; } FILE *f = PyFile_AsFile(pyfile); if(f==NULL) { printf("exit 2"); system("pause"); return 1; } PyRun_AnyFileEx(f,"camera.py",0); Py_Finalize(); } int main() { test1(); system("pause"); }
点击Run后,打开摄像头如下:
调用如下:
转载于:https://blog.51cto.com/3754839/1401587
[置顶] Python编程-混合编程(C++,python,opencv)实现相关推荐
- Qt 调用Python引擎混合编程
0.前言 使用Qt和Python做混合编程,充分发挥Qt GUI的图形化框架优势和Python数据处理的计算能力.复杂的计算可用到Python众多三方库,将Python需要执行的功能写成py文件,做成 ...
- python fortran混合编程_python fortran c 混合编程
背景 因为编程需要使用python和fortran(或者c,c++)混合编程,所以进行了一些资料查询和实验.首先尝试了f2py,但是这个项目已经很久没有更新,为了以后兼容性考虑(后期可能会使用到c++ ...
- C++调用Python(混合编程)函数整理总结
文章目录 C++调用python概述 相关官方文档 相关函数 1.初始化python解释器环境 2.调用python脚本的静态简单方式 3.动态加载python模块并执行函数 3.1不带参数和返回值的 ...
- 实现C#和Python高效率混合编程
为什么C#和Python要屡屡进行混合编程呢?之前我们提到了使用托管C++封装Python的核心库为一个托管dll,然后供C#调用的途径,这种方式算是一种比较科学的方式.但是它仍然有两个小的问题,一来 ...
- 【胶水语言】 Python 的混合编程
Python运行 JavaScript, C/C++, PHP JavaScript C/C++ DLL 文件生成流程 PHP PHP 安装流程 JavaScript 这里介绍一个自带的 Python ...
- python+java混合编程
python通常在编程中难以单独的完成一个系统,因此在开发中常常需要借助其他语言开发主要程序,使用python对数据进行处理. 在通过java向python传递数据的时候通常是一些小的数据,例如:字符 ...
- python java混合编程_详解java调用python的几种用法(看这篇就够了)
java调用python的几种用法如下: 在java类中直接执行python语句 在java类中直接调用本地python脚本 使用Runtime.getRuntime()执行python脚本文件(推荐 ...
- python c 混合编程 用c循环_混合编程:用 C 语言来扩展 Python 大法吧!
Python 实在是一种让人上瘾的编程语言,简洁的语法+丰富的扩展包,几乎可以用 Python 做任何事情,唯一的黑点似乎就是「慢」,但是与高效的编译语言 C\C++ 互联以后,可以解决脚本语言运行速 ...
- python fortran混合编程输入矩阵_如何将动态数组从Python传递到Fortran动态链接库
我在Python调用fortran dll时遇到了一些问题,我真的需要一些帮助和建议. 我的问题是将动态数组传递给函数(由Fortran DLL提供).在 例如,我有一个带有动态数组的类型:Modul ...
最新文章
- 天联高级版客户端_天联客户端登录的KIS旗舰版打印单据问题
- CloudStack基本概念-Zone,Pod,Cluster,Host
- 杀毒软件引起的WinCE编译出错问题
- 介绍一个修改 Visual Studio Code 侧边框颜色的扩展 Peacock
- matlab2012b函数问题,MATLAB版本(2012b 64bit)在尝试调用svmtrain函数时报错
- 六款Linux常用远程连接工具介绍
- froala 的使用
- 软件开发项目各阶段交付物列表
- google三篇重要论文(英文原文)
- ZigBee协调器和终端通信
- 南阳oj 括号配对问题
- 周立波实意搞慈善 沈顺坤高举双手把他赞
- 360奇舞团钟恒:选用Vue.js进行组件化开发,我们遇到了哪些坑?
- 动态规划法(二)找零钱问题
- 3--表格table 个人简历
- C语言数据结构学习——数组和广义表
- 图片打不开怎么办?只需这样操作
- 手写简易版web框架
- 图片与Base64数据转换存储
- 手机怎么在日历上设置每月19号提醒?
热门文章
- 【mysql】悲观锁和乐观锁的实现原理
- 数据倾斜是什么以及造成的原因?
- 了解MyBatis框架
- 普通地图的六大要素_地图的基本要素是什么 主要是哪三大要素
- mysql mybatis 主键id_MyBatis+MySQL 返回插入的主键ID
- spring mysql中文乱码问题_解决Spring下MySQL出现乱码的问题
- 码匠编程:零基础从前端入门到前端开发工程师路线
- 年薪20万的前端工程师成长线路指南!
- 自学编程的八大误区!克服它们,豁然开朗!
- micropython做产品开发_关于MicroPython是否可以真正用在产品开发的讨论