- 博客(73)
- 收藏
- 关注
原创 Ubuntu20.04安装并配置Pycharm2020.2.5
Ubuntu20.04安装并配置Pycharm2020.2.5 并解决Ubuntu20.04系统中pycharm-无法输入中文的问题
2025-03-20 10:55:00
406
原创 Ubuntu20.04 安装离线版 NVIDIA Container Toolkit
【代码】Ubuntu20.04 在离线机器上安装 NVIDIA Container Toolkit。
2025-03-05 11:23:37
410
原创 ubuntu20.04 安装离线版docker-20.10.0
官网下载:解压安装包;将解压之后的docker文件移到 /usr/bin目录下;将docker注册成系统服务;然后在文件中添加以下内容,退出并保存。给文件增加可执行权限设置开机自启动启动docker测试docker是否启动。
2025-03-05 09:35:53
377
原创 ROS 发布和订阅压缩图像消息 sensor_msgs/Image 和 sensor_msgs/CompressedImage
sensor_msgs/Image 是ROS(机器人操作系统)中定义的一种消息类型,用于在ROS系统中传输图像数据。由于 sensor_msgs/CompressedImage 的数据量较小,因此在网络传输中具有更高的效率,尤其是在带宽受限的情况下。image_transport是一个用于实现图像传输的工具包,它提供了一种灵活的方式来订阅和发布图像数据,但它并不直接操作消息类型。sensor_msgs/Image:原始的未经压缩的图像消息,通常用于传输原始图像数据,例如 RGB、灰度或深度图像。
2024-04-07 15:42:09
5644
1
原创 Yolo目标检测标注格式转换成多目标跟踪数据集MOT标注格式
9、可见比例(visibility ratio),因为object的遮挡和图像边框裁剪,用一个介于0和1之间的数字表示该object的可见程度。2、3、4、5、接下来的四个数字表示行人在二维图像坐标中的边界框位置。6、是否考虑 the entry,flag: considered (1) , ignored (0)最后三个7、 8、 9都是-1,xyz,具体怎么用,未知。2、3、4、5 bbox坐标(x, y, w, h)就像数据库里面的表,表达一对多的关系。0、Frame ID 表示帧ID。
2023-11-23 16:53:13
2153
1
原创 ROS2的cv_bridge和opencv版本不匹配问题
/usr/bin/ld: warning: libopencv_imgcodecs.so.4.2, needed by /opt/ros/foxy/lib/libcv_bridge.so, may conflict with libopencv_imgcodecs.so.4.5/usr/bin/ld: warning: libopencv_core.so.4.2, needed by /opt/ros/foxy/lib/libcv_bridge.so, may conflict with libopen
2023-10-18 10:34:20
1666
1
原创 labelme的json文件转换为yolo标签格式
points是标注的点,points的取值与shape_type相关,这里取的是rectangle即直接由矩形的对角线上两点确定一个矩形框。因此points中也只有两个点的信息,点的坐标为(x,y) ,坐标轴原点在左上角,原点向下为y正向,向右为x正向。shapes: 其中包含了标注的具体信息,由列表组成,每一个元素是一个字典,一个字典包含了一个标注框的相关信息;其中重要的参数有shapes shape_type imagePath。shape_type: 记录了标记时选择的方式。
2023-07-19 10:26:48
1494
5
原创 LabelImg标注的VOC格式xml标签与YOLO格式txt标签相互转换
voc格式中保存的信息为:xmin,ymin,xmax,ymax,所以只要根据上面的公式,就可以推导出这四个值。xmin,ymin,xmax,ymax,定义了每个目标的标定框坐标:即左上角的坐标和右下角的坐标;voc格式的xml标签文件转化yolo格式的txt标签文件代码:voctoyolo.py。yolo格式的txt标签文件转化voc格式的xml标签文件代码:yolotovoc.py。YOLO标签格式,会直接把每张图片标注的标签信息保存到一个txt文件中。归一化以后的中心坐标(x,y)
2023-07-19 10:14:37
2606
原创 解决 cv_bridge 与 opencv4 版本冲突问题
解决了在 ROS melodic / noetic 下 cv_bridge 与 opencv4 版本冲突导致的 opencv 操作 导致 Segmentation fault (core dumped) 的问题。
2023-07-07 13:42:25
708
原创 视觉数据标注需要的代码,批量重命名文件夹中的图片文件, 图像保存格式转换, 去除相似度高的图片
【代码】视觉数据标注需要的代码,Yolov5 xml转txt, 批量重命名文件夹中的图片文件。
2023-06-02 10:08:05
360
原创 Ubuntu下U盘只读文件系统,图标上锁,提示无法修改
可以看到,U盘的文件体系是/dev/sdb1,挂载点是/media/lyl/ZHANGY。只是举例,请以实际情况为准!如果提示权限不敷,请使用。卸载之后不要拔失落U盘!3 修复U盘文件系统故障。
2022-12-09 14:38:47
1110
原创 ubuntu16.4 安装TensorRT (C++/Python)
根据自己的系统版本和 CUDA 版本,选择安装包,如图所示(如果是完整安装,建议选择Tar File Install Packages,这样可以自行选择安装位置)在/etc/ld.so.conf里面加一行/home/zhy/Downloads/soft/TensorRT-6.0.1.5/lib,然后sudo ldconfig.如果使用tensorflow的话,需要安装UFF的.whl文件(optional)上有两种方式安装:.deb文件/tar文件。这里介绍通过.tar文件安装的过程。
2022-11-04 15:43:48
950
原创 ffmpeg cv:Mat编码成H265数据流
avcodec_encode_video2():编码一帧视频。avformat_write_header():写文件头(对于某些没有文件头的封装格式,不需要此函数。av_write_trailer():写文件尾(对于某些没有文件头的封装格式,不需要此函数。avformat_alloc_output_context2():初始化输出码流的AVFormatContext。av_new_stream():创建输出码流的AVStream。av_write_frame():将编码后的视频码流写入文件。
2022-10-12 16:33:00
1889
2
原创 ROS工程编写CMakeLists支持需要的ffmpeg+opencv库
ROS工程编写CMakeLists支持需要的ffmpeg+opencv库
2022-09-05 16:32:37
1336
原创 FFmpeg进行图像格式转换(cv::Mat --->>YUV---->>AVFrame)
opencv提供了rgb到yuv420的格式转换函数;下面给出基本用法。
2022-08-23 16:04:35
3535
8
原创 G++ + OpenCV 编译
函数库分为静态库和动态库静态库: 在程序编译时会被连接到目标代码中,程序运行是则不需要静态库的存在。动态库: 在程序编译时不会被连接到目标代码中,而是程序运行时载入的。两者区别:前者是编译连接的,后者是程序运行载入的。.........
2022-08-17 15:51:30
1735
原创 基于gstreamer的rtsp推流 (USB摄像头)
一、配置gstreamer环境 二、安装gstreamer-rtsp-server 三、读取usb摄像头并推rtsp流
2022-08-16 14:06:22
10103
原创 ubuntu16.04上安装gstreamer
安装指令和使用示例,参照部分包安装失败,提示如下(在ubuntu18.04上是可以安装成功的)验证:dpkg -l | grep gstreamer。
2022-08-16 11:01:47
1373
原创 华为MDC通过网卡转发接入外网
前提条件:1.你的上位机ubuntu系统须为 16.04版本;2.你的上位机要通过网线和MDC主机连接,且你能通过SSH连接MDC;3.你的上位机可以通过 WIFI连接外网。4. 所有的命令都在su管理员权限下运行。一 上位机配置确认你的上位机已经通过WIFI连接外网,且可以访问外网。上位机配置端口转发执行以下命令,打开.conf文件,sudo gedit /etc/sysctl.conf插入代码:net.ipv4.ip_forward=1sysctl -p /etc
2022-03-17 15:56:13
1879
原创 shutil 模块
shutil.copyfile( src, dst) #从源src复制到dst中去。 如果当前的dst已存在的话就会被覆盖掉shutil.move( src, dst) #移动文件或重命名shutil.copymode( src, dst) #只是会复制其权限其他的东西是不会被复制的shutil.copystat( src, dst) #复制权限、最后访问时间、最后修改时间shutil.copy( src, dst) #复制一个文件到一个文件或一个目...
2021-09-22 15:13:08
108
原创 Ubuntu16.4 安装和编译FFmpeg
1. 安装SDL下载SDL早期的ffplay版本是基于SDL1.x实现的音视频显示和播放,而现在的ffplay则是基于SDL2.x实现的,因此我们需要到SDL官网(http://www.libsdl.org/)下载,本文编写时的版本是SDL version 2.0.7 (stable),下载并解压缩:tar xzvf SDL2-2.0.7.tar.gz编译SDL要使能ffplay编译,需要Ubuntu系统中支持SDL功能,所以我们首先需要下载SDL的源代码。进入对应目录,配置并编译,安
2021-09-10 10:43:11
907
原创 ubuntu16.4安装Anaconda3并且解决ROS和Python3版本矛盾的问题
1. 例子#!/bin/bash echo "123456"|sudo -S chmod 777 /home/zhy/Desktop/image.sh;{gnome-terminal -t "roscore" -x bash -c "roscore;exec bash"}&# >>> conda initialize >>># !! Contents within this block are managed by 'conda init
2021-08-20 16:29:20
514
原创 ubuntu16.4安装和卸载cuda9.0+cudnn7.1以及ubuntu20.04安装cuda11.6
一. 安装 cuda下载cuda:https://developer.nvidia.com/cuda-toolkit-archive事前安装过驱动,所以不安装。在.bashrc的末尾添加环境变量:exportPATH=/usr/local/cuda-9.0/bin:$PATHexportLD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH使设置生效:source ~/.bashrc验证cuda是否安装成功...
2021-08-20 16:27:15
898
原创 .sh文件在同一终端打开多个窗口并自动执行多个ROS程序
1. 例子#!/bin/bash echo "123456"|sudo -S chmod 777 /home/zhy/Desktop/image.sh;{gnome-terminal -t "roscore" -x bash -c "roscore;exec bash"}&# >>> conda initialize >>># !! Contents within this block are managed by 'conda init
2021-08-20 14:59:26
1273
原创 解决ROS和python3中cv_bridge的问题
一. 问题 1. 使用ROS的时候只用了C++/python2,没有发现cv_bridge问题 使用Anaconda配置了一个只有Python3.5的环境,运行cv_bridge时出现报错 from cv_bridge import CvBridge, CvBridgeError ImportError: dynamic module does not define module export function (PyInit_cv_bridge_boost)...
2021-08-18 17:28:13
5163
1
原创 数字视频编码和RTSP视频推拉流(三)
一、H.264的RTP打包 1.1 H.264格式 H.264由一个一个的NALU组成,每个NALU之间使用00 00 00 01或00 00 01分隔开 每个NALU的第一次字节都有特殊的含义,其内容如下 位描述bit[7]必须为0bit[5-6]标记该NALU的重要性bit[0-4]NALU单元的类型好,对于H.264格式了解这么多就够了,我们的目的是想从一个H.264的文件中将一个一个的NALU提取出来,然后封装成RTP包,下面介绍如何将NALU封装成RTP包 1.2 H.264的RTP打
2021-06-24 14:12:31
718
原创 数字视频编码和RTSP视频推拉流(二)
原文一、什么是RTSP协议? RTSP是一个实时传输流协议,是一个应用层的协议 通常说的RTSP包括RTSP协议、RTP协议、RTCP协议 对于这些协议的作用简单的理解如下 RTSP协议:负责服务器与客户端之间的请求与响应 RTP协议:负责传输媒体数据 RTCP协议:在RTP传输过程中提供传输信息 rtsp承载与rtp和rtcp之上,rtsp并不会发送媒体数据,而是使用rtp协议传输 rtp并没有规定发送方式,可以选择udp发送或者tcp发送 二、RTSP协议详解 rtsp的交互过程就
2021-06-24 13:21:43
874
2
原创 数字视频编码和RTSP视频推拉流(一)
一. 视频格式与编码压缩标准视频压缩主要包括:视频文件格式(简称:文件格式),视频封装格式(简称:视频格式),视频编码方式(简称:视频编码)1. 视频文件格式(简称:文件格式): 常见的视频文件格式如1.avi,2.mpg这些都叫做视频的文件格式,它由你电脑上安装的视频播放器关联。2. 视频封装格式(简称:视频格式): AVI,MPEG是一种视频封装格式,相当于一种储存视频信息的容器。它是由相应的公司开发出来的。我们可以在自己的电脑上看到的1.avi,2.mpg这些视频文件格式的后缀名即采用相应的
2021-06-24 11:44:29
959
原创 文件管理-C++
1. open函数: #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int open(const char *pathname, int flags); // pathname文件名参数: flags 为文件打开方式 ------O_RDONLY 只读打开 O_WRONLY 只写打开 O_RDWR 读、写打开返回值:RETU
2021-06-24 09:32:40
690
原创 实现.pb模型和.pbtxt模型之间的转换 python
#!/usr/bin/env python3# -*- coding: utf-8 -*-##### 实现.pb模型和.pbtxt模型之间的转换import tensorflow as tffrom google.protobuf import text_formatdef convert_pb_to_pbtxt(): """ :param filename: :return: """ with tf.gfile.GFile('/home/zhy/Docu
2021-03-27 09:24:03
2099
2
原创 Linux +ROS下生成动态链接库(libXXX.so)并调用项目实例
hello.h文件#ifndef _HELLO_H#define _HELLO_Hextern "C"{ int opencv_main(char str[]);}#endifhello.cpp文件#include "hello.h"#include<opencv2/opencv.hpp> //加上函数实现需要的头文件#include<iostream>#include<string.h>using namespace
2021-02-22 10:31:45
2058
原创 CMakeLists基础使用指南
1. 基础概念使用cmake编译的文件目录结构├── build // 编译中间文件目录├── CMakeLists.txt├── include // 头文件目录│ ├── a.h│ └── b.h├── lib // 外部动态链接库目录│ └── libb.so└── src // 程序文件目录 ├── a.cpp └── main.cppCMakeLists的主要作用添加管理文件间的相互依赖关系(main<-
2021-02-15 09:11:48
506
原创 ValueError: unsupported pickle protocol: 3
错误描述:File “/usr/lib/python2.7/pickle.py”, line 886, in load_protoraise ValueError, “unsupported pickle protocol: %d” % protoValueError: unsupported pickle protocol: 3产生的原因:系统自带的“perspective.p”文件本来就是Python3生成的,在读取数据的时候用的是python2。import picklew =pickle
2020-12-16 14:37:43
1486
原创 python @property的介绍与使用
1. python @property的介绍与使用python的@property是python的一种装饰器,是用来修饰方法的。作用:使用@property装饰器来创建只读属性,@property装饰器会将方法转换为相同名称的只读属性,可以与所定义的属性配合使用,这样可以防止属性被修改。(1) 修饰方法,是方法可以像属性一样访问。lass DataSet(object): @property def method_with_property(self): ##含有@property
2020-10-23 17:12:07
168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人