图形编程框架-来自RMW

来自于南京理工大学的一位极好老师,如果对图像处理感兴趣,强烈推荐。该框架有如下好处:
1、构造函数只是简单初始化,而不传递参数进行初始化。因为视频的帧处理时使用的类是相同的,重复声明类是没有必要的。可以利用已经生成的对象。因此用一个专门的可以主动调用的初始化函数来对参数进行初始化,以适应不同参数的图像。
2、在初始化函数中申请内存,如果已申请内存大于要处理的图像,将不会重复申请,并且有专门的内存释放函数。在析构函数中主动调用,释放内存。
3、可以调试某一帧图像。

// RmwImgProcFrame.h : header file
//
#ifndef RMW_IMG_PROC_FRAME_H
#define RMW_IMG_PROC_FRAME_H

class RmwImgProcFrame
{
public:
    //构造/析构
    RmwImgProcFrame();
    ~RmwImgProcFrame();
    //初始化
    bool Initialize(bool isRGB,int width,int height);
    //执行
    bool DoNext(BYTE *pImgData);
    //结果
    BYTE *GetResImg();
    int GetResWidth();
    int GetResHeight();

private:
    // 内存释放
    void Dump();
    // 调试
    void Debug();

private:
    //初始化成功
    bool m_isInitOK;
    //图像属性
    bool m_isRGB;
    int m_width;
    int m_height;
    //内存
    BYTE *m_pRGBImg;
    BYTE *m_pGryImg;
    BYTE *m_pGrdImg;
    BYTE *m_pTmpImg;
    BYTE *m_pResImg;
    int m_memSize;
    //内部计数器
    int m_nFrameID;
};
#endif
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// RmwImgProcFrame.cpp : implementation file
//
////////////////////////////////////////////////////////////////////////////////////////////////////
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <time.h>

#include "RmwImgProcFrame.h"

////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 构造/析构函数
//
////////////////////////////////////////////////////////////////////////////////////////////////////
RmwImgProcFrame::RmwImgProcFrame()
{   //<在构造函数中把所有的成员变量赋初值>
    //是否初始化成功
    m_isInitOK=false;
    //图像属性
    m_isRGB=false;
    m_width=0;
    m_height=0;
    //内存空间
    m_pRGBImg=NULL;
    m_pGryImg=NULL;
    m_pGrdImg=NULL;
    m_pTmpImg=NULL;
    m_pResImg=NULL;
    m_memSize=0; //已申请的内存字节数
    //内部计数器
    m_nFrameID=0;
}

RmwImgProcFrame::~RmwImgProcFrame()
{   //<在析构函数中释放所有的内存>
    Dump();
}

void RmwImgProcFrame::Dump()
{   //<写一个专门的用作释放内存的函数,因为内存会有多次的申请与释放>
    if (m_pRGBImg) { delete m_pRGBImg; m_pRGBImg=NULL; }
    if (m_pGryImg) { delete m_pGryImg; m_pGryImg=NULL; }
    if (m_pGrdImg) { delete m_pGrdImg; m_pGrdImg=NULL; }
    if (m_pTmpImg) { delete m_pTmpImg; m_pTmpImg=NULL; }
    if (m_pResImg) { delete m_pResImg; m_pResImg=NULL; }
    m_memSize=0;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 初始化
//
////////////////////////////////////////////////////////////////////////////////////////////////////
bool RmwImgProcFrame::Initialize(bool isRGB,int width,int height)
{   //<在初始化函数中对所有的成员变量赋初值>
    //<仅在初始化函数中申请内存,因为初始化函数不会被频繁调用>
    //<初始化函数可以被多次调用>
    //<内存申请时,若已经申请的内存大于本次需要的内存,则不再次申请>

    //step.1------图像属性--------------------------//
    m_isRGB=isRGB;
    m_width=width;
    m_height=height;
    //step.2------内存申请--------------------------//
    if (m_width*m_height>m_memSize)
    {
        //先释放
        Dump();
        //后申请
        m_pRGBImg=new BYTE [m_width*m_height*3]; //彩色图像
        m_pGryImg=new BYTE [m_width*m_height];  //灰度图像
        m_pGrdImg=new BYTE [m_width*m_height]; //梯度图像
        m_pTmpImg=new BYTE [m_width*m_height]; //临时图像
        m_pResImg=new BYTE [m_width*m_height]; //结果图像
        //记录申请的大小
        m_memSize=m_width*m_height;
    }
    //step.3------初始化成功标志--------------------//
    m_isInitOK=(m_pRGBImg && m_pGryImg && m_pGrdImg && m_pTmpImg && m_pResImg);
    return m_isInitOK;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 执行
//
////////////////////////////////////////////////////////////////////////////////////////////////////
bool RmwImgProcFrame::DoNext(BYTE *pImgData)
{   
    if (!m_isInitOK) return false;
    //...
    //...
    //...
    //某个特定帧的调试,比如10
    if (m_nFrameID==10)
    {
        Debug();
    }
    //内部计数器累加
    m_nFrameID++;
    return true;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 结果
//
////////////////////////////////////////////////////////////////////////////////////////////////////
BYTE *RmwImgProcFrame::GetResImg()
{   //返回结果图像
    return m_pResImg;
}
int RmwImgProcFrame::GetResWidth()
{   //返回结果图像的宽度
    return m_width;
}
int RmwImgProcFrame::GetResHeight()
{   //返回结果图像的高度
    return m_height;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 调试
//
////////////////////////////////////////////////////////////////////////////////////////////////////
void RmwImgProcFrame::Debug()
{   //<本类的内部调试: 屏幕输出、文件输出等>
    return;
}
xiaofeiyu@xiaofeiyu-virtual-machine:~/task$ # 检查 rmw 相关包是否安装 dpkg -l | grep ros-humble-rmw # 若缺少关键包,重新安装核心组件 sudo apt update sudo apt install --reinstall ros-humble-ros-base ros-humble-rmw* ii ros-humble-rmw 6.1.2-1jammy.20250607.015321 amd64 Contains the ROS middleware API. ii ros-humble-rmw-connextdds 0.11.3-1jammy.20250607.030145 amd64 A ROS2 RMW implementation built with RTI Connext DDS Professional. ii ros-humble-rmw-connextdds-common 0.11.3-1jammy.20250607.025720 amd64 Common source for RMW implementations built with RTI Connext DDS Professional and RTI Connext DDS Micro. ii ros-humble-rmw-connextdds-common-dbgsym 0.11.3-1jammy.20250607.025720 amd64 debug symbols for ros-humble-rmw-connextdds-common ii ros-humble-rmw-connextdds-dbgsym 0.11.3-1jammy.20250607.030145 amd64 debug symbols for ros-humble-rmw-connextdds ii ros-humble-rmw-cyclonedds-cpp 1.3.4-1jammy.20250607.025717 amd64 Implement the ROS middleware interface using Eclipse CycloneDDS in C++. ii ros-humble-rmw-cyclonedds-cpp-dbgsym 1.3.4-1jammy.20250607.025717 amd64 debug symbols for ros-humble-rmw-cyclonedds-cpp ii ros-humble-rmw-dbgsym 6.1.2-1jammy.20250607.015321 amd64 debug symbols for ros-humble-rmw ii ros-humble-rmw-dds-common 1.6.0-2jammy.20250607.025502 amd64 Define a common interface between DDS implementations of ROS middleware. ii ros-humble-rmw-dds-common-dbgsym 1.6.0-2jammy.20250607.025502 amd64 debug symbols for ros-humble-rmw-dds-common ii ros-humble-rmw-desert 1.0.5-1jammy.20250607.025726 amd64 Implement the ROS middleware interface using the DESERT protocol stack for underwater communications. ii ros-humble-rmw-desert-dbgsym 1.0.5-1jammy.20250607.025726 amd64 debug symbols for ros-humble-rmw-desert ii ros-humble-rmw-fastrtps-cpp 6.2.7-1jammy.20250607.031129 amd64 Implement the ROS middleware interface using eProsima FastRTPS static code generation in C++. ii ros-humble-rmw-fastrtps-cpp-dbgsym 6.2.7-1jammy.20250607.031129 amd64 debug symbols for ros-humble-rmw-fastrtps-cpp ii ros-humble-rmw-fastrtps-dynamic-cpp 6.2.7-1jammy.20250607.031154 amd64 Implement the ROS middleware interface using introspection type support. ii ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym 6.2.7-1jammy.20250607.031154 amd64 debug symbols for ros-humble-rmw-fastrtps-dynamic-cpp ii ros-humble-rmw-fastrtps-shared-cpp 6.2.7-1jammy.20250607.025731 amd64 Code shared on static and dynamic type support of rmw_fastrtps_cpp. ii ros-humble-rmw-fastrtps-shared-cpp-dbgsym 6.2.7-1jammy.20250607.025731 amd64 debug symbols for ros-humble-rmw-fastrtps-shared-cpp ii ros-humble-rmw-gurumdds-cpp 3.4.2-1jammy.20250607.025728 amd64 Implement the ROS middleware interface using GurumNetworks GurumDDS static code generation in C++. ii ros-humble-rmw-gurumdds-cpp-dbgsym 3.4.2-1jammy.20250607.025728 amd64 debug symbols for ros-humble-rmw-gurumdds-cpp ii ros-humble-rmw-implementation 2.8.4-1jammy.20250607.031631 amd64 Proxy implementation of the ROS 2 Middleware Interface. ii ros-humble-rmw-implementation-cmake 6.1.2-1jammy.20250522.072625 amd64 CMake functions which can discover and enumerate available implementations. ii ros-humble-rmw-implementation-dbgsym 2.8.4-1jammy.20250607.031631 amd64 debug symbols for ros-humble-rmw-implementation ii ros-humble-rmw-zenoh-cpp 0.1.1-1jammy.20250607.024355 amd64 A ROS 2 middleware implementation using zenoh-cpp ii ros-humble-rmw-zenoh-cpp-dbgsym 0.1.1-1jammy.20250607.024355 amd64 debug symbols for ros-humble-rmw-zenoh-cpp 获取:1 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy InRelease [4,682 B] 命中:2 https://mirrors.ustc.edu.cn/ubuntu jammy InRelease 命中:4 https://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease 命中:5 https://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease 命中:6 https://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease 命中:7 https://packages.microsoft.com/repos/edge stable InRelease 命中:3 https://packages.microsoft.com/repos/code stable InRelease 命中:8 https://apt.foxglove.dev/studio stable InRelease 已下载 4,682 B,耗时 3秒 (1,644 B/s) 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 有 301 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-dds-common-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-desert-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-shared-cpp-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-gurumdds-cpp-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-implementation-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-dds-common' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-dynamic-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-connextdds' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-connextdds-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-zenoh-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-desert' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-gurumdds-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-cyclonedds-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-connextdds-common-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-implementation-cmake' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-implementation' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-cyclonedds-cpp-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-connextdds-common' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-shared-cpp' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-zenoh-cpp-dbgsym' 注意,根据Glob 'ros-humble-rmw*' 选中了 'ros-humble-rmw-fastrtps-cpp-dbgsym' 下列软件包是自动安装的并且现在不需要了: libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib python-pkg-resources python-setuptools python2 python2-minimal python2.7 python2.7-minimal 使用'sudo apt autoremove'来卸载它(它们)。 下列软件包将被升级: ros-humble-ros-base 升级了 1 个软件包,新安装了 0 个软件包,重新安装了 25 个软件包,要卸载 0 个软件包,有 300 个软件包未被升级。 需要下载 29.0 MB 的归档。 解压缩后会消耗 0 B 的额外空间。 获取:1 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw amd64 6.1.2-1jammy.20250607.015321 [67.5 kB] 获取:2 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-connextdds amd64 0.11.3-1jammy.20250607.030145 [16.4 kB] 获取:3 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-connextdds-common amd64 0.11.3-1jammy.20250607.025720 [250 kB] 获取:4 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-connextdds-common-dbgsym amd64 0.11.3-1jammy.20250607.025720 [2,627 kB] 获取:5 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-connextdds-dbgsym amd64 0.11.3-1jammy.20250607.030145 [85.0 kB] 获取:6 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-cyclonedds-cpp amd64 1.3.4-1jammy.20250607.025717 [168 kB] 获取:7 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-cyclonedds-cpp-dbgsym amd64 1.3.4-1jammy.20250607.025717 [2,176 kB] 获取:8 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-dbgsym amd64 6.1.2-1jammy.20250607.015321 [34.0 kB] 获取:9 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-dds-common amd64 1.6.0-2jammy.20250607.025502 [96.8 kB] 获取:10 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-dds-common-dbgsym amd64 1.6.0-2jammy.20250607.025502 [763 kB] 获取:11 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-desert amd64 1.0.5-1jammy.20250607.025726 [139 kB] 获取:12 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-desert-dbgsym amd64 1.0.5-1jammy.20250607.025726 [3,186 kB] 获取:13 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-cpp amd64 6.2.7-1jammy.20250607.031129 [90.9 kB] 获取:14 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-cpp-dbgsym amd64 6.2.7-1jammy.20250607.031129 [2,880 kB] 获取:15 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-dynamic-cpp amd64 6.2.7-1jammy.20250607.031154 [116 kB] 获取:16 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym amd64 6.2.7-1jammy.20250607.031154 [3,508 kB] 获取:17 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-shared-cpp amd64 6.2.7-1jammy.20250607.025731 [162 kB] 获取:18 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-fastrtps-shared-cpp-dbgsym amd64 6.2.7-1jammy.20250607.025731 [5,279 kB] 获取:19 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-gurumdds-cpp amd64 3.4.2-1jammy.20250607.025728 [167 kB] 获取:20 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-gurumdds-cpp-dbgsym amd64 3.4.2-1jammy.20250607.025728 [2,006 kB] 获取:21 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-implementation amd64 2.8.4-1jammy.20250607.031631 [25.4 kB] 获取:22 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-implementation-cmake amd64 6.1.2-1jammy.20250522.072625 [8,878 B] 获取:23 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-implementation-dbgsym amd64 2.8.4-1jammy.20250607.031631 [91.7 kB] 获取:24 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-zenoh-cpp amd64 0.1.1-1jammy.20250607.024355 [186 kB] 获取:25 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-rmw-zenoh-cpp-dbgsym amd64 0.1.1-1jammy.20250607.024355 [4,829 kB] 获取:26 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy/main amd64 ros-humble-ros-base amd64 0.10.0-1jammy.20250618.005618 [5,632 B] 已下载 29.0 MB,耗时 9秒 (3,373 kB/s) debconf: 无法初始化前端界面:Dialog debconf: (对话框界面要求屏幕画面必须为至少 13 行高及 31 列宽.) debconf: 返回前端界面:Readline (正在读取数据库 ... 系统当前共安装有 310883 个文件和目录。) 准备解压 .../00-ros-humble-rmw_6.1.2-1jammy.20250607.015321_amd64.deb ... 正在解压 ros-humble-rmw (6.1.2-1jammy.20250607.015321) 并覆盖 (6.1.2-1jammy.20250607.015321) ... 准备解压 .../01-ros-humble-rmw-connextdds_0.11.3-1jammy.20250607.030145_amd64.deb ... 正在解压 ros-humble-rmw-connextdds (0.11.3-1jammy.20250607.030145) 并覆盖 (0.11.3-1jammy.20250607.030145) ... 准备解压 .../02-ros-humble-rmw-connextdds-common_0.11.3-1jammy.20250607.025720_amd64.deb ... 正在解压 ros-humble-rmw-connextdds-common (0.11.3-1jammy.20250607.025720) 并覆盖 (0.11.3-1jammy.20250607.025720) ... 准备解压 .../03-ros-humble-rmw-connextdds-common-dbgsym_0.11.3-1jammy.20250607.025720_amd64.deb ... 正在解压 ros-humble-rmw-connextdds-common-dbgsym (0.11.3-1jammy.20250607.025720) 并覆盖 (0.11.3-1jammy.20250607.025720) ... 准备解压 .../04-ros-humble-rmw-connextdds-dbgsym_0.11.3-1jammy.20250607.030145_amd64.deb ... 正在解压 ros-humble-rmw-connextdds-dbgsym (0.11.3-1jammy.20250607.030145) 并覆盖 (0.11.3-1jammy.20250607.030145) ... 准备解压 .../05-ros-humble-rmw-cyclonedds-cpp_1.3.4-1jammy.20250607.025717_amd64.deb ... 正在解压 ros-humble-rmw-cyclonedds-cpp (1.3.4-1jammy.20250607.025717) 并覆盖 (1.3.4-1jammy.20250607.025717) ... 准备解压 .../06-ros-humble-rmw-cyclonedds-cpp-dbgsym_1.3.4-1jammy.20250607.025717_amd64.deb ... 正在解压 ros-humble-rmw-cyclonedds-cpp-dbgsym (1.3.4-1jammy.20250607.025717) 并覆盖 (1.3.4-1jammy.20250607.025717) ... 准备解压 .../07-ros-humble-rmw-dbgsym_6.1.2-1jammy.20250607.015321_amd64.deb ... 正在解压 ros-humble-rmw-dbgsym (6.1.2-1jammy.20250607.015321) 并覆盖 (6.1.2-1jammy.20250607.015321) ... 准备解压 .../08-ros-humble-rmw-dds-common_1.6.0-2jammy.20250607.025502_amd64.deb ... 正在解压 ros-humble-rmw-dds-common (1.6.0-2jammy.20250607.025502) 并覆盖 (1.6.0-2jammy.20250607.025502) ... 准备解压 .../09-ros-humble-rmw-dds-common-dbgsym_1.6.0-2jammy.20250607.025502_amd64.deb ... 正在解压 ros-humble-rmw-dds-common-dbgsym (1.6.0-2jammy.20250607.025502) 并覆盖 (1.6.0-2jammy.20250607.025502) ... 准备解压 .../10-ros-humble-rmw-desert_1.0.5-1jammy.20250607.025726_amd64.deb ... 正在解压 ros-humble-rmw-desert (1.0.5-1jammy.20250607.025726) 并覆盖 (1.0.5-1jammy.20250607.025726) ... 准备解压 .../11-ros-humble-rmw-desert-dbgsym_1.0.5-1jammy.20250607.025726_amd64.deb ... 正在解压 ros-humble-rmw-desert-dbgsym (1.0.5-1jammy.20250607.025726) 并覆盖 (1.0.5-1jammy.20250607.025726) ... 准备解压 .../12-ros-humble-rmw-fastrtps-cpp_6.2.7-1jammy.20250607.031129_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-cpp (6.2.7-1jammy.20250607.031129) 并覆盖 (6.2.7-1jammy.20250607.031129) ... 准备解压 .../13-ros-humble-rmw-fastrtps-cpp-dbgsym_6.2.7-1jammy.20250607.031129_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-cpp-dbgsym (6.2.7-1jammy.20250607.031129) 并覆盖 (6.2.7-1jammy.20250607.031129) ... 准备解压 .../14-ros-humble-rmw-fastrtps-dynamic-cpp_6.2.7-1jammy.20250607.031154_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-dynamic-cpp (6.2.7-1jammy.20250607.031154) 并覆盖 (6.2.7-1jammy.20250607.031154) ... 准备解压 .../15-ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym_6.2.7-1jammy.20250607.031154_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym (6.2.7-1jammy.20250607.031154) 并覆盖 (6.2.7-1jammy.20250607.031154) ... 准备解压 .../16-ros-humble-rmw-fastrtps-shared-cpp_6.2.7-1jammy.20250607.025731_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-shared-cpp (6.2.7-1jammy.20250607.025731) 并覆盖 (6.2.7-1jammy.20250607.025731) ... 准备解压 .../17-ros-humble-rmw-fastrtps-shared-cpp-dbgsym_6.2.7-1jammy.20250607.025731_amd64.deb ... 正在解压 ros-humble-rmw-fastrtps-shared-cpp-dbgsym (6.2.7-1jammy.20250607.025731) 并覆盖 (6.2.7-1jammy.20250607.025731) ... 准备解压 .../18-ros-humble-rmw-gurumdds-cpp_3.4.2-1jammy.20250607.025728_amd64.deb ... 正在解压 ros-humble-rmw-gurumdds-cpp (3.4.2-1jammy.20250607.025728) 并覆盖 (3.4.2-1jammy.20250607.025728) ... 准备解压 .../19-ros-humble-rmw-gurumdds-cpp-dbgsym_3.4.2-1jammy.20250607.025728_amd64.deb ... 正在解压 ros-humble-rmw-gurumdds-cpp-dbgsym (3.4.2-1jammy.20250607.025728) 并覆盖 (3.4.2-1jammy.20250607.025728) ... 准备解压 .../20-ros-humble-rmw-implementation_2.8.4-1jammy.20250607.031631_amd64.deb ... 正在解压 ros-humble-rmw-implementation (2.8.4-1jammy.20250607.031631) 并覆盖 (2.8.4-1jammy.20250607.031631) ... 准备解压 .../21-ros-humble-rmw-implementation-cmake_6.1.2-1jammy.20250522.072625_amd64.deb ... 正在解压 ros-humble-rmw-implementation-cmake (6.1.2-1jammy.20250522.072625) 并覆盖 (6.1.2-1jammy.20250522.072625) ... 准备解压 .../22-ros-humble-rmw-implementation-dbgsym_2.8.4-1jammy.20250607.031631_amd64.deb ... 正在解压 ros-humble-rmw-implementation-dbgsym (2.8.4-1jammy.20250607.031631) 并覆盖 (2.8.4-1jammy.20250607.031631) ... 准备解压 .../23-ros-humble-rmw-zenoh-cpp_0.1.1-1jammy.20250607.024355_amd64.deb ... 正在解压 ros-humble-rmw-zenoh-cpp (0.1.1-1jammy.20250607.024355) 并覆盖 (0.1.1-1jammy.20250607.024355) ... 准备解压 .../24-ros-humble-rmw-zenoh-cpp-dbgsym_0.1.1-1jammy.20250607.024355_amd64.deb ... 正在解压 ros-humble-rmw-zenoh-cpp-dbgsym (0.1.1-1jammy.20250607.024355) 并覆盖 (0.1.1-1jammy.20250607.024355) ... 准备解压 .../25-ros-humble-ros-base_0.10.0-1jammy.20250618.005618_amd64.deb ... 正在解压 ros-humble-ros-base (0.10.0-1jammy.20250618.005618) 并覆盖 (0.10.0-1jammy.20250429.225608) ... 正在设置 ros-humble-rmw (6.1.2-1jammy.20250607.015321) ... 正在设置 ros-humble-rmw-zenoh-cpp (0.1.1-1jammy.20250607.024355) ... 正在设置 ros-humble-rmw-implementation-cmake (6.1.2-1jammy.20250522.072625) ... 正在设置 ros-humble-rmw-dbgsym (6.1.2-1jammy.20250607.015321) ... 正在设置 ros-humble-ros-base (0.10.0-1jammy.20250618.005618) ... 正在设置 ros-humble-rmw-dds-common (1.6.0-2jammy.20250607.025502) ... 正在设置 ros-humble-rmw-fastrtps-shared-cpp (6.2.7-1jammy.20250607.025731) ... 正在设置 ros-humble-rmw-desert (1.0.5-1jammy.20250607.025726) ... 正在设置 ros-humble-rmw-gurumdds-cpp (3.4.2-1jammy.20250607.025728) ... 正在设置 ros-humble-rmw-cyclonedds-cpp (1.3.4-1jammy.20250607.025717) ... 正在设置 ros-humble-rmw-connextdds-common (0.11.3-1jammy.20250607.025720) ... 正在设置 ros-humble-rmw-zenoh-cpp-dbgsym (0.1.1-1jammy.20250607.024355) ... 正在设置 ros-humble-rmw-fastrtps-dynamic-cpp (6.2.7-1jammy.20250607.031154) ... 正在设置 ros-humble-rmw-dds-common-dbgsym (1.6.0-2jammy.20250607.025502) ... 正在设置 ros-humble-rmw-fastrtps-shared-cpp-dbgsym (6.2.7-1jammy.20250607.025731) ... 正在设置 ros-humble-rmw-fastrtps-cpp (6.2.7-1jammy.20250607.031129) ... 正在设置 ros-humble-rmw-connextdds (0.11.3-1jammy.20250607.030145) ... 正在设置 ros-humble-rmw-connextdds-common-dbgsym (0.11.3-1jammy.20250607.025720) ... 正在设置 ros-humble-rmw-cyclonedds-cpp-dbgsym (1.3.4-1jammy.20250607.025717) ... 正在设置 ros-humble-rmw-desert-dbgsym (1.0.5-1jammy.20250607.025726) ... 正在设置 ros-humble-rmw-fastrtps-dynamic-cpp-dbgsym (6.2.7-1jammy.20250607.031154) ... 正在设置 ros-humble-rmw-connextdds-dbgsym (0.11.3-1jammy.20250607.030145) ... 正在设置 ros-humble-rmw-implementation (2.8.4-1jammy.20250607.031631) ... 正在设置 ros-humble-rmw-gurumdds-cpp-dbgsym (3.4.2-1jammy.20250607.025728) ... 正在设置 ros-humble-rmw-implementation-dbgsym (2.8.4-1jammy.20250607.031631) ... 正在设置 ros-humble-rmw-fastrtps-cpp-dbgsym (6.2.7-1jammy.20250607.031129) ... 正在处理用于 libc-bin (2.35-0ubuntu3.10) 的触发器 ... /sbin/ldconfig.real: /lib/libMvUsb3vTL.so is not a symbolic link /sbin/ldconfig.real: /lib/libMVGigEVisionSDK.so is not a symbolic link /sbin/ldconfig.real: /lib/libMvCamLVision.so is not a symbolic link /sbin/ldconfig.real: /lib/libMvCameraControl.so is not a symbolic link /sbin/ldconfig.real: /lib/libMvCameraControlWrapper.so is not a symbolic link
最新发布
07-24
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值