TX2+Ubuntu18.04系统---编译opencv程序的两种方式g++、cmake

本文档记录了在Ubuntu环境下使用CUDA和OpenCV进行程序开发时遇到的三个主要问题:1)找不到OpenCV的配置文件;2)编译C++程序时遇到语法识别错误;3)Python运行OpenCV程序出现编码错误。针对这些问题,提供了相应的解决办法,包括设置CMAKE_PREFIX_PATH或OpenCV_DIR,检查头文件路径,以及解决Python程序的编码问题。
摘要由CSDN通过智能技术生成

参考:https://blog.csdn.net/tgs2033/article/details/125308594?ops_request_misc=&request_id=&biz_id=102&utm_term=ubuntu%E4%B8%ADopencv%E7%A8%8B%E5%BA%8F%E7%9A%84%E7%BC%96%E8%AF%91&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-4-125308594.142v24huaweicloudv2,157v15new_3&spm=1018.2226.3001.4187

CMakelist:
#cmake版本
cmake_minimum_required(VERSION 3.10)

#项目文件夹名称
project(Choose_Connected)

find_package(CUDA REQUIRED)
find_package(OpenCV REQUIRED)

#查找当前目录下的所有源文件,并将名称保存到 DIR_SRCS 变量	
aux_source_directory(. DIR_SRCS)

INCLUDE_DIRECTORIES(/usr/local/cuda-10/include)# 指定CUDA头文件的搜索路径
list(APPEND CUDA_NVCC_FLAGS "-std=c++11")# 使CUDA NVCC 编译器支持C++11特性

cuda_add_executable(${PROJECT_NAME} Connected_Choose_4.cpp)#构建可执行目标文件所需要的源文件

target_link_libraries(opencv ${OpenCV_LIBS})

问题1:
Could not find a package configuration file provided by “OpenCV” with any
of the following names:

OpenCVConfig.cmake
opencv-config.cmake

Add the installation prefix of “OpenCV” to CMAKE_PREFIX_PATH or set
“OpenCV_DIR” to a directory containing one of the above files. If “OpenCV”
provides a separate development package or SDK, be sure it has been
installed.

解决参考:
https://blog.csdn.net/qq_43780850/article/details/122360925
注意:你用的博客中方法2,而且方法2中的你TX2中的路径是: /home/nvidia/myopencv/build/(好像是这个,主要是要有OpenCVConfig.cmake或者opencv-config.cmake)

问题2:你哪怕编译一个简单的cpp程序(TX2+OpenCV+C++)就会报你程序中有不认识的符号,如不认识include中的“i”是啥等,就感觉语法识别有问题
报错:
/home/nvidia/Desktop/GPU_Study/code/OpenCV_test/showPhoto.cpp:1:5: error: ‘i’ does not name a type
��# i n c l u d e " o p e n c v 2 / o p e n c v . h p p "
^
/home/nvidia/Desktop/GPU_Study/code/OpenCV_test/showPhoto.cpp:5:2: error: ‘u’ does not name a type
v o i d m a i n ( )
^
/home/nvidia/Desktop/GPU_Study/code/OpenCV_test/showPhoto.cpp:9:2: error: ‘v’ does not name a type
w a i t K e y ( 0 ) ;
^
解决方法:见:Linux_终端_CUDA调试经验.docx(1.(8))

问题3:OpenCV+Python编译最简单的TX2+OpenCV+py程序也会报错,提示文件格式不对,上面的错误也有可能是文件格式不对,导致识别乱码:
nvidia@ubuntu:~/Desktop/GPU_Study/code/OpenCV_Python_test$ python3 1.py
File “1.py”, line 1
SyntaxError: Non-UTF-8 code starting with ‘\xff’ in file 1.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
解决方法:见:Linux_终端_CUDA调试经验.docx(1.(8))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

embrace_the_sunhaha

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值