当前位置: 首页 > news >正文

官方网站包括哪几个网站中国建设银行洛阳分行网站

官方网站包括哪几个网站,中国建设银行洛阳分行网站,html5网站正在建设中模板下载,wordpress 选单设定目录 0、前言1、安装 pybind11库c侧python侧 2、C引入bybind11vs增加相关依赖及设置cpp中添加头文件及导出模块cpp中添加numpy相关数据结构的接收和返回编译生成dll后改成导出模块同名文件的.pyd 3、python调用c4、C引入bybind11 0、前言 在当今的计算机视觉和机器学习领域侧python侧 2、C引入bybind11vs增加相关依赖及设置cpp中添加头文件及导出模块cpp中添加numpy相关数据结构的接收和返回编译生成dll后改成导出模块同名文件的.pyd 3、python调用c4、C引入bybind11 0、前言 在当今的计算机视觉和机器学习领域Python 和 C 是两种最常用的编程语言。Python 以其简单易学、高效编程和强大的科学计算库而闻名而 C 则以其高效性和强大的计算能力而著称。然而这两种语言各有优劣因此将它们结合起来使用可以发挥它们的优点同时弥补它们的缺点。在本文中我们将介绍如何在 Windows VS 环境下使用 pybind11 进行 C 和 Python 联合编程示例进行机器视觉和相机位姿优化相关的程序开发。我们将使用 Python 3.7 和 C并利用 numpy 数组格式接收 Python 侧的两幅图像并利用 g2o 进行 BA 优化最后将优化结果以 numpy 数组形式返回 Python。 1、安装 pybind11库 首先我们需要安装 pybind11 库。pybind11 是一个用于将 C 代码绑定到 Python 解释器的库它提供了一种简单的方法来创建 Python 模块这些模块可以直接调用 C 代码。 c侧 pybind11库是一个纯头文件的库其实只要从github上下载源码即可供使用。 git clone https://github.com/pybind/pybind11.gitpython侧 python侧可以进入conda虚拟环境注意需要3.7版本的python直接pip安装 pip install pybind112、C引入bybind11 安装 pybind11 库后我们可以开始编写 C 代码。以g2o ba为例我们将上篇博文中的c代码进行稍加改造开个python的调用“接口”即可 vs增加相关依赖及设置 使用bybind11需要将下载的头文件路径引入项目同时需要将python3.7的头文件路径及lib引入及链接进项目。 1头文件路径加入 2python3.7的lib加入 3生成动态库dll类型 cpp中添加头文件及导出模块 在c程序中去掉main函数添加头文件及导出模块设置 如上两图在常规c文件中首位加入头文件和导出模块定义我们这次导出的是ab这个函数ab是将上篇博文的main函数改成的。 cpp中添加numpy相关数据结构的接收和返回 // 将Python中的图像传递给C进行处理 py::array_tdouble ab(py::array_tuint8_t imge1, py::array_tuint8_t imge2){//创建全0 numpy数组py::array_tdouble output_array({3,4});auto buf output_array.mutable_data();for (int i 0; i 3; i) {for (int j 0; j 4; j) {buf[i * 4 j] 0;}}// 将输入图像转换为OpenCV的Mat对象auto bufimg1 imge1.request();auto bufimg2 imge2.request();int type CV_8UC3;int channels 3;if (bufimg1.ndim 3) {channels bufimg1.shape[2];if (channels 4) {type CV_8UC4;}}//如果不是3或4通道则退出if (channels ! 3 channels ! 4) {return output_array;}cv::Mat img1(bufimg1.shape[0], bufimg1.shape[1], type, bufimg1.ptr);cv::Mat img2(bufimg2.shape[0], bufimg2.shape[1], type, bufimg2.ptr);如上我们ab函数可以接收来自python的图像numpy数组并将图像转化为了cv::mat格式交给c后续处理。最后返回numpy形式的g2o优化后的位姿数组 g2o::VertexSE3Expmap* v dynamic_castg2o::VertexSE3Expmap*(optimizer.vertex(1));Eigen::Isometry3d pose v-estimate();// 获取输出数组的指针auto output_ptr output_array.mutable_data();// 将isometry的旋转矩阵和平移向量存储在numpy数组中Eigen::MapEigen::Matrixdouble, 3, 4, Eigen::RowMajor result_map(output_ptr);result_map.block3, 3(0, 0) pose.rotation().matrix();result_map.block3, 1(0, 3) pose.translation();return output_array编译生成dll后改成导出模块同名文件的.pyd 将生成的dll改成g2opy.pyd 3、python调用c 进入与c依赖的同一个python环境然后编辑简单的调用程序 两帧图像送入c优化计算后返回输出 本篇所有源码已上传链接如下: python实现C程序g2o的ba优化模块调用python侧的程序资源 本资源为python和C联合编程的示例vs工程源码 4、C引入bybind11 通过本文的示例我们验证了如何在 Windows VS 环境下使用 pybind11 进行 C 和 Python 联合编程的可行性可进一步进行机器视觉和相机位姿优化相关的程序开发。 有了C的加持python的机器人开发在性能上或者是解决方案上又有了更多的可选项。可以发挥python的更大威力了keep go on
http://www.pierceye.com/news/859010/

相关文章:

  • 电商网站可以用dw做嘉兴网站建设平台
  • 做网站是数据库应该放在哪里建筑工程水平防护网
  • vps网站无法通过ip访问网站怎么做的支付宝接口
  • 怎么创建一个博客网站网站的c4d动画是怎么做的
  • 西安做企业网站科技论文发表网
  • html 手机网站开发企业做网站的合同
  • 建立wordpress网站吗全州建设完小网站
  • 网站域名注册证书是什么制作WordPress友情链接
  • 如何在解决方案中新建网站html网页制作的软件下载
  • 企业网站怎么做优化开小加工厂去哪接单子
  • 网站建设推广费怎么做账域名和网站绑定
  • 商丘网站建设想象力网络中国流量最大的网站排行
  • 网站是否有备案网站集约化建设建议
  • 浏览器收录网站网上做图赚钱的网站
  • 网站建设优化过程中的优化策略相关文章 wordpress
  • 泉州网站深圳航空公司官网首页
  • 百度推广整体优化网站整体软装设计公司
  • 太原搜索引擎优化招聘信息服务好的镇江网站优化
  • 自己做网站下载怎么网站基础知识域名5个点
  • 网站搭建合作协议wordpress注册页面插件
  • 网络公司最好的是哪个兰州网络推广优化怎样
  • 网站文章采集工具新网站怎么做流畅
  • discuz 手机网站模板山东省住房建设厅网站首页
  • 网站建设违约责任条款枣庄专业做网站
  • python做爬虫和做网站做两个一摸一样的网站
  • 网站做微信登录asp.net做网站头部和尾部_都用什么来实现
  • 南充哪里做网站太原关键词优化公司
  • 哪个网站做的ppt模板好投放广告网站
  • 公司网站中新闻中心怎样做优化百度浏览器电脑版
  • 厦门网站建设 九来外国做视频在线观看网站