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

02.02.01.快速开始篇(OpenNI2-SDK案例 使用Eclise开发工具:创建Executable项目方式 ExtendedAPI)

本页目录

  • 1、创建项目
  • 2、配置
  • 3、测试

基础知识:02.01.01.快速开始篇(OpenCV案例 使用Eclise开发工具:创建Executable项目方式 打开图片 )

创建项目

  • 菜单位置:File》New 》 Other…》C/C++》C/C++ Project


  • 测试一下
    • 清理:右键项目 》Clean Project
    • 编译:右键项目 》Build Project
    • 运行:右键项目 Run As》 Run Configurations … 》C/C++ Application
      • Name:Test Debug
      • C/C++ Application输入列选择按钮:Search Project… 》自动生成Debug/Test
      • 点击运行:Run

配置

OpenNI2-SDK代码复制

根目录获取代码

  • OpenNI2/sdk/libs 》 排除:Android-Arm、Linux-Arm、MacOSX、arm-32、arm-64、Win32、Linux-x86(Linux-x64 同时出现才删除) 其他都要

  • OpenNI2/sdk/Include 》排除:Android-Arm、Linux-Arm、MacOSX、arm-32、arm-64、Win32、Linux-x86(Linux-x64 同时出现才删除) 其他都要

  • OpenNI2/samples/samples/ThirdParty 》排除:Android-Arm、Linux-Arm、MacOSX、arm-32、arm-64、Win32、Linux-x86(Linux-x64 同时出现才删除)demo 其他都要

  • OpenNI2/samples/samples/ExtendedAPI/{main.cpp,Viewer.cpp,Viewer.h} 》删除Src/Test.cpp

  • 源代码

    • 导入: File》Import…》General》Existing Projects into Workspace》选择项目:Test
    • 导入配置:右键项目 Import…》C/C++ 》C/C++ Project Settings》选择项目的配置:Test.xml

Eclipse配置项目

  • 菜单位置:右键项目 Project》Properties》C/C++ Build》Tool Chain Editor》Current builder 选择:Autolools Makefile Generator
  • 菜单位置:右键项目 Project》Properties》C/C++ Build》Settings
  • Binary Parsers》勾选GNU Elf Parser和Elf Parser
  • GCC C++ Compiler 》Miscellaneous》Other Flags:
-c -fmessage-length=0`pkg-config --cflags opencv4 gtk+-3.0 libuvc libusb-1.0 gl`
  • GCC C++ Compiler 》Includes》Include paths(-I)
# pkg-config --cflags opencv4 gtk+-3.0 libuvc libusb-1.0 gl/usr/local/software/opencv/build/install/include/opencv4;/usr/include/gtk-3.0;/usr/include/at-spi2-atk/2.0;/usr/include/at-spi-2.0;/usr/include/dbus-1.0;/usr/lib64/dbus-1.0/include;/usr/include/gtk-3.0;/usr/include/gio-unix-2.0;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/harfbuzz;/usr/include/pango-1.0;/usr/include/fribidi;/usr/include/atk-1.0;/usr/include/cairo;/usr/include/pixman-1;/usr/include/libxml2;/usr/include/freetype2;/usr/include/harfbuzz;/usr/include/libpng16;/usr/include/gdk-pixbuf-2.0;/usr/include/libpng16;/usr/include/libmount;/usr/include/blkid;/usr/include/glib-2.0;/usr/lib64/glib-2.0/include;/usr/include/sysprof-4;/usr/local/include;/usr/local/include/libusb-1.0# 本地.h文件${workspace_loc:/${ProjName}}/sdk/Include/Driver;${workspace_loc:/${ProjName}}/sdk/Include;${workspace_loc:/${ProjName}}/src/ThirdParty/Common;${workspace_loc:/${ProjName}}/src/ThirdParty/d2c/Include;${workspace_loc:/${ProjName}}/src/ThirdParty/GL/GL;${workspace_loc:/${ProjName}}/src/ThirdParty/libuvc/include/libuvc;${workspace_loc:/${ProjName}}/src/ThirdParty/libuvc/include;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/calib3d;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/core;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/features2d/hal;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/flann;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/highgui;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/imgcodecs;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/imgcodecs/legacy;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/imgproc/hal;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/imgproc;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/photo/legacy;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/videoio;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenCV420/Linux/include/opencv4/opencv2/videoio/legacy;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenNI2/Include/Driver;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenNI2/Include;${workspace_loc:/${ProjName}}/src/ThirdParty/OpenNI2/Include/Linux-x86;${workspace_loc:/${ProjName}}/src/ThirdParty/PSCommon/XnLib/Include/Linux-x86;${workspace_loc:/${ProjName}}/src/ThirdParty/PSCommon/XnLib/Include;${workspace_loc:/${ProjName}}/src/ThirdParty/UvcSwapper/Include;${workspace_loc:/${ProjName}}/src/ThirdParty/XnLib/Include/Linux-x86;${workspace_loc:/${ProjName}}/src/ThirdParty/XnLib/Include;${workspace_loc:/${ProjName}}/src
  • GCC C++ Linker 》Libraries》Library search path(-L)
# 可以命令:pkg-config --libs opencv4 gtk+-3.0 libuvc libusb-1.0 gl 获得/usr/local/software/opencv/build/install/lib64;/usr/lib64;/usr/local/lib64;/usr/local/lib;/usr/local/software/OpenNI2/sdk/libs;/usr/local/software/OpenNI2/sdk/libs/OpenNI2/Drivers
  • GCC C++ Linker 》Miscellaneous》Linker Flags:
`pkg-config --cflags --libs opencv4 gtk+-3.0 libuvc libusb-1.0`
  • GCC C++ Linker 》Libraries》Libraries(-l)
# 可以命令:pkg-config --libs opencv4 gtk+-3.0 libuvc libusb-1.0 gl 获得opencv_gapi;opencv_stitching;opencv_aruco;opencv_bgsegm;opencv_bioinspired;opencv_ccalib;opencv_cudabgsegm;opencv_cudafeatures2d;opencv_cudaobjdetect;opencv_cudastereo;opencv_dnn_objdetect;opencv_dnn_superres;opencv_dpm;opencv_face;opencv_freetype;opencv_fuzzy;opencv_hfs;opencv_img_hash;opencv_intensity_transform;opencv_line_descriptor;opencv_mcc;opencv_quality;opencv_rapid;opencv_reg;opencv_rgbd;opencv_saliency;opencv_signal;opencv_stereo;opencv_structured_light;opencv_phase_unwrapping;opencv_superres;opencv_cudacodec;opencv_surface_matching;opencv_tracking;opencv_highgui;opencv_datasets;opencv_text;opencv_plot;opencv_videostab;opencv_cudaoptflow;opencv_optflow;opencv_cudalegacy;opencv_videoio;opencv_cudawarping;opencv_wechat_qrcode;opencv_xfeatures2d;opencv_shape;opencv_ml;opencv_ximgproc;opencv_video;opencv_xobjdetect;opencv_objdetect;opencv_calib3d;opencv_imgcodecs;opencv_features2d;opencv_dnn;opencv_flann;opencv_xphoto;opencv_photo;opencv_cudaimgproc;opencv_cudafilters;opencv_imgproc;opencv_cudaarithm;opencv_core;opencv_cudev;gtk-3;gdk-3;pangocairo-1.0;pango-1.0;harfbuzz;atk-1.0;cairo-gobject;cairo;gdk_pixbuf-2.0;gio-2.0;gobject-2.0;glib-2.0;uvc;usb-1.0;GL;glut;OpenNI2

测试

  • 摄像头连接电脑

  • /mnt/D/eclipse/Test/Test.cpp

    • 运行:选择项目 》左上角:>RunCTest Debug
http://www.cnnetsun.cn/news/88200.html

相关文章:

  • 38、Linux 邮件与网页浏览实用指南
  • 41、互联网服务实用指南
  • LLaMA-Factory微调与模型中断续训实战
  • GitHub项目实践:Fork并定制你的个性化Anything-LLM前端界面
  • pythonstudy Day37
  • Linly-Talker结合RAG技术实现知识增强型虚拟客服系统
  • 用Deepseek-v3.1在Trae中编写AI中继程序
  • LobeChat能否实现思维导图输出?结构化内容展示尝试
  • 开源5G基站硬件参数
  • C#开发桌面应用调用GPT-SoVITS REST API实战
  • Dify Docker部署与使用全指南
  • 数组作为参数
  • 蜜罐技术-德迅猎鹰
  • Daily Report — Day 9 (Beta)
  • Seed-Coder-8B-Base与SonarQube智能集成路径
  • 基于CentOS7 DM8单机部署配置记录-20251216
  • 大模型入门:预训练、微调和蒸馏,一篇文章全掌握
  • LobeChat能否编写教案?教师备课自动化尝试
  • vLLM-Omni:全模态AI推理框架技术解析
  • 18、基于位置点的恢复
  • LobeChat文件上传与语音交互实测:这些功能太惊艳了
  • LobeChat日志记录与审计功能配置方法说明
  • Qwen3-8B接入MCP实现动态工具调用
  • Docker 从入门到精通教程
  • waitGroup底层源码分析
  • LobeChat能否用于编写Prometheus告警规则?可观测性增强
  • 大模型学习全攻略:七阶段系统学习路线图,从基础到实战应用,非常详细收藏我这一篇就够了
  • 玄晶引擎AI数字员工更新深度测评:Sora2赋能+RPA运营,AI内容生产进入效率革命期
  • YOLOv5中使用torch加载自定义模型进行目标检测
  • LobeChat能否隐藏源码信息?增强系统隐蔽性