- 博客(149)
- 资源 (7)
- 收藏
- 关注
原创 使用cv::FileStorage时出错 Can‘t open file: yaml‘ in read mode
这个问题主要是因为yaml文件的格式不对,建议先用cv::FileStorage::WRITE生成一个yaml文件,保证格式无误,然后再在上面手动修改或添加参数。第一种是opencv自带的库,如果你工程已经依赖opencv库,建议用这种,它支持xml,yaml,json三种配置文件的处理;(3)我任务yaml,json,xml 遇到的文件打不开,可能原因是类似的。在做的一个c++工程项目,想加一个配置文件,我发现主要有两种主流的方式,(1)yaml文件的相对路径有问题,就用绝对路径,有网友这么说的;
2023-10-29 18:54:20
1185
原创 基于ubuntu20.04的 ros2(foxy版本)安装
如果“Hello World”字符串在两个终端中正常传输,说明通信系统没有问题。再来试一试ROS中的经典示例——小海龟仿真器。sudo vi /etc/hosts 增加。## 安装时间可能较长,安心等待。## 推荐桌面版,比较推荐。
2023-10-25 09:51:40
844
原创 ROS2使用colcon build编译的工程运行出错,cmake编译的没有问题。
用这种方法编译后,install下的可执行文件将软链接指向build下的可执行文件,这其实并没有解决install目录下的文件不能执行的问题,这是进行了重新链接而已。为例,会在install目录中使用符号链接,指向build目录下生成的库文件(如 *.so). 没有该选项,则两个目录都会有该库文件。ROS2下的工程编译后, 用标准的ros2的运行节点命令无法正常运行,程序没有问题。:使用符号链接而不是复制文件,如。./ exc_file 执行,install下的可执行文件用。
2023-10-21 09:45:15
1092
原创 opencv读取摄像头并读取时间戳
但是实际测试时发现帧率并未被改变,这个可能和VideoCapture cap(cv::CAP_V4L2)有关,cv::CAP_V4L2只是其中一种读取方法,这个参数可能需要和相机采用的驱动方法有关。
2023-10-10 10:40:21
2089
原创 google的日志glog安装及使用
我发现我生成的build路径下的glog文件夹下只有5个头文件,缺少log_severity.h和platform.h两个头文件。我用cmake编译(参考:github.com/google/glog#cmake)fatal error: glog/logging.h : 没有那个文件或目录。fatal error: glog/platform.h: 没有那个文件或目录。解决方法: 在src下的glog下把那两个头文件拷贝到你的工程目录下,即可。glog是google出的一个轻量级的c++日志库。
2023-09-28 15:57:18
836
原创 colcon build --symlink-install 出现 colcon: 未找到命令
build-essential \ 如果安了,就不要安装了。cmake \ 如果安装过了,就不要安装了。git \ 、、若没有安装的的的话。colcon: 未找到命令。
2023-09-25 16:36:28
1787
原创 ubuntu20.04 jammy 安装ros2
执行如下命令:sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg。W: GPG 错误:http://packages.ros.org/ros2/ubuntu jammy InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654。正在读取软件包列表... 完成。
2023-09-25 14:06:12
1465
1
原创 编译opencv-3.4.5 [交叉编译]
在unbuntu20.04环境下编译opencv3.4.5,cmake 版本:3.27.4gcc 版本:11.4.0g++版本:11.4.0在此环境下编译opencv4.5.4正常。
2023-09-20 16:44:25
2034
原创 arch64-linux-gnu/bin/ld: main.cc:(.text+0x718): undefined reference to `cv::VideoCapture::open
然后检测CmakeList.txt 及其3rdparty文件夹中的opencv中的linux版本的lib中缺少。基于linux的rk3566平台,编译rkNPU2下的一个examples中的rknn_yolov5_demo。
2023-09-20 11:45:55
490
原创 gcc/c++ 版本不一致问题导致的
有博主认为这是因为编译环境下的gcc及g++版本和目标板的版本不同造成的,(参考:) 因为pc端的gcc及g++都是11.4.0版本的,但是设备端的gcc和g++是9.4.0版本的。因为不小心多设置的了一次,所以gcc11有两个,这里我选择gcc-11作为我的默认版本,然后输入gcc--version命令,发现也已经是配置选项的gcc了。下面是设备端的查看的GLIBC的信息的指令,发现最高仅到2.30,没有GLIBC_2.34的版本, 考虑这种思路,参考。4. 配置不同版本的g++,gcc。
2023-09-14 10:23:46
1392
原创 基于rk3566的的示例yolov5代码编译出错问题
按照文档Rockchip_ Quick_Start_RKNN_SDK_V1.5.2_CN.pdf (在rknpu2/doc/目录下)安装命令为 sudo apt-get install g++-aarch64-linux-gnu。)交叉编译example/rknn-yolov5-demo。板子是rk3566,系统是ubuntu20.04。主机x86的pc系统是ubuntu20.04。其中要先下载gcc交叉编译器。按照瑞芯微官方给的教程(
2023-09-13 16:27:28
358
原创 编译c++代码时,报错:No such file or directory #include “opencv2/opencv_modules.hpp“
安装路径上有一个opencv4这个目录,这个情况很多人都会遇到,因此在编写的c++代码中引用的头文件也需要加入opencv4这一级目录,但是我在实际操作的过程中,依赖多的时候偶尔还是会出错,可能是我那里没有搞正确。我的解决方式是把opencv2这一级目录放到include下面,也就是中间去掉了opencv4这一层目录,然后我的c++代码可以正常的编译了。在rk板子上编译了opencv库,然后opencv安装在/usr/local/include//opencv2下,
2023-09-07 16:58:32
1614
原创 rk3568板子读取usb摄像头总是报错类似这样的错误:open VIDEOIO(V4L2:/dev/video0): can‘t open camera by index
1. 这个是权限问题,直接通过chmod修改摄像头的权限,如果摄像头挂载到系统的设备名是/dev/video7,输入如下命令后,问题得到解决。插拔usb摄像头,输入如下命令,可以看到挂载到系统对应的设备号。输入: ls /dev/video* -l。如果在你的组的列表中你看不到摄像头,输入如下指令。对于Ubuntu users:(20.04)检查是否和video属于同一组。注销然后重新登陆,在尝试。
2023-09-07 16:48:52
2718
4
原创 linux服务器下source: not found解决方法(无root权限)
执行souuce 出现错误提示:-sh: 34: source: not found运行 ls -l /bin/sh 后显示/bin/sh -> dash,说明当前脚本使用dash运行的,而不是bash。
2023-05-25 09:27:53
1567
3
原创 windows先的conda环境复制到linux环境
可以导出的文件中的-pip模块下面的内容单独复制出来,然后做简单的处理成类似如下的文件的格式即可用老的方式来安装这些包 :pip install -r new_req.txt。如果用下面的命令来创建requirements.txt。可以尝试包含-no-build导出包的区别。上面导出的格式不能直接用: 比如这样的命令。
2023-05-24 19:39:07
4580
原创 关于c++的extern的用法示例
我们我们需要在使用到这个全局变量或函数的源文件中加入extern声明的变量或函数;这里是声明而不是重新定义,定义只需要一次。
2023-05-21 18:38:32
623
原创 应用程序无法正常启动0xc000007b
总结后,觉得大多数都是dll的问题,因为运行失败后,提示信息很少,不容易排查到底调用哪个库失败,先从自己工程调用的dll排查,我用了opencv和onnxruntime, opencv测试过没有问题,onnxruntime看似配置也没有问题。上面是opencv的配置方法,onnxruntime是相同的方式,但是每次编译项目后,不会遇到问题,但是一旦运行,就会出现如下错误提示。但是我更换了onnxruntime的配置方式,删除了上述的配置方式,使用vs2019菜单栏“2.一个是directx的问题。
2023-05-16 13:47:13
426
原创 json.decoder.JSONDecodeError: Invalid \escape: line 11422 column 19 (char 205418)
json.decoder.JSONDecodeError: Invalid \escape: line 11422 column 19 (char 205418)
2023-03-23 18:29:51
342
1
原创 win10 +cuda11.3.1+VS2019-社区版+drive445.87
windows+cuda13.1.1+vs2019, 离线包安装,简单可靠。
2023-03-11 12:45:34
684
原创 7z.gz压缩文件的解压(python)
7z.gz的文件比较少(对于我来讲),当然如果安装了7z-zip工具,可以方便的对各种格式的压缩文件进行解压,它可以解压各种类型的压缩文件,比如:7z、XZ、BZIP2、GZIP、TAR、ZIP 以及 WIM。但是涉及到批量数据的解压还是用python代码比较方便。3.然后讲一下7z.gz的解压,按正常逻辑,python解压的话,先解压gz,再解压7z,我刚开始是这样简单的逻辑,但是发现解压gz格式的时候总是保存的0KB的7z文件,尝试各种方法,最后发现,可以一步到位,直接用7z解压7z.gz文件。
2022-12-16 12:02:36
2131
原创 ftp服务器下载文件
服务器有一批数据想要下载一下,然后可以通过ftplib库登录远程ftp服务器,下面只是一个简单的登录功能,它还有其他很多函数可用,比如ftp.cwd().ftp.pwd(),ftp.dir(),ftp.nlst()等.具体的操作可以参考其他资料.有一点一定要注意的就是,你的服务器的设置开启了ftp下载功能,不然连接或读取的时候会有问题.
2022-12-15 19:40:58
572
原创 python服务调用-基于http的通信写协议(flask)-linux
服务器要部署一套算法, 我们的部署在该服务器上的数据平台需要调用 该算法进行一些操作,要点主要两方面: 1.客户端发请求(同时传数据给服务). 2. 服务端的算法响应给请求,处理结束后,返回数据给客户端.这里一般第一次使用http协议的时候有点懵,其实是非常简单,我这里给了一个详细的例子,(因为我在网上看了很多资料,发现大多都是讲原理,或则例子不够详尽)这就要考虑几个方面:这里考虑用http的传输协议,因为这是短响应,并不是持续调用通信,flask框架是一个轻量化的web通信框架,所以我选择使用flask,
2022-12-08 12:16:38
1187
1
原创 torch实现一个简单的线性回归
torch实现一个简单的线性回归,方程为y=2x+10( y=wx+b), 回归的过程也就是求w和b.最后的的演示可以看到模型训练完成后,w=1.9764 , b=10.4458,已经很接近真实的参数.
2022-11-22 14:22:59
889
原创 程序开机自启动(基于linux)
在linux系统设置python文件的开机启动,python文件的执行代码所依赖的虚拟conda环境。这里要注意的是开启启动时所设置的sh文件的执行环境的目录和python文件的目录是不一样的,这里再sh脚本时注意切换到python执行文件所在的目录(否则,如果python执行文件中有相对路径,则sh执行时不切换路径,将会引出找不到文件这样的问题)
2022-11-10 15:01:58
1339
原创 AI-图像数据检查
做cv的朋友经常要接触图片,在做图像处理(筛选、重命名、质量检查)时千万要注意图像是否损害,其实很容易判断的时图片能不能正常打开,另一种容易被忽视的图片损坏就是图像截断,如线图所示:上述都是可以正常打开的图片,但是属于截断,在做图像前处理时很容易引起错误,在用别人的框架训练推理模型时有时会出错,这是个很简单但容易被忽视,可通过如下简单的脚本进行检查此类损坏。def check_img_if_normal_or_damage(img_dir, bad_data_d...
2022-03-07 18:26:45
760
原创 nanodet-plus
源码:https://github.com/RangiLyu/nanodet1. 运行inference, python demo/demo.py image --config config//nanodet_irbt_list_dataset.yml --model checkpoint/nanodet-plus-m-1.5x_416/nanodet_model_best.pth --path data/test_data/x.jpg出现如下错误提示:oaded library ...
2022-03-01 10:05:51
1284
1
原创 返回for 循环里面的变量,保持for循环不退出, goto或yield
我的需求是在一个while(1)循环中一直读取摄像头的值,并返回里面的一个变量值,但同时保持循环一直执行,查了很多资料,发现大部分都没有用,摸索了2个小时,终于找到了方法。那就是用yield,goto只能在函数内跳转,所以goto解决不了该问题。1. 先说一下goto吧,比较简单,就是通过跳转来实现,但仅在同一个函数内有效。使用前先安装goto: pip install goto-statement#!/usr/bin/python# -*- coding: UTF-8 -*-from .
2021-12-16 18:02:28
1417
原创 python 命令行工具 argparse
rimport argparseimport sysdef argsparser(): parser = argparse.ArgumentParser(description=__doc__) parser.add_argument( "--data1", type=int, default=10, help=("num 1"), required=False) parser.add_
2021-12-16 17:51:14
1050
image watch for vs2017
2019-04-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人