摘要: 仿射变换 Affine Transformation 仿射变换:由一个平面/立体图形变换到另一个平面/立体图形的一种变换。在改变的过程中,保持直线和平行线不变(平行线映射为平行线),任何放射变换都可以分解为缩放、旋转、平移和切变的组合。 仿射变换矩阵: \[\begin{bmatrix} x' \\ 阅读全文
posted @ 2025-09-03 14:03 一楼二栋 阅读(75) 评论(0) 推荐(0)
摘要: 构建仿射变换矩阵 vector_angle_to_rigid 作用:获取刚性变换的变换矩阵 算子签名:vector_angle_to_rigid( Row1, Column1, Angle1, Row2, Column2, Angle2 : HomMat2D) 输入参数: Row1, Column1 阅读全文
posted @ 2025-09-03 14:03 一楼二栋 阅读(68) 评论(0) 推荐(0)
摘要: 1. 简单图像拼接 简单图像的拼接,不涉及图像融合,仅简单地平移将多张图拼接成一张图。 明确问题: 将多少张图拼起来?由于是多张图,这需要一个元组来存储多张图片的集合。 是横向拼图,还是纵向拼图?这涉及拼图的方向。 是一张挨着一张无缝拼接吗?能不能做“有缝”的自由拼接?这涉及拼接偏移量。 tile_ 阅读全文
posted @ 2025-09-03 14:01 一楼二栋 阅读(190) 评论(0) 推荐(0)
摘要: HTuple-> VC 数据类型转换 // HTuple 转 int HTuple hTuple = 1; int Val1 = hTuple[0].I(); // HTuple 转 double HTuple hTuple = 1.1; double Val2 = hTuple[0].D(); / 阅读全文
posted @ 2025-09-03 14:00 一楼二栋 阅读(70) 评论(0) 推荐(0)
摘要: 1.定时器QTimer类基础 1.1基础使用方式 创建一个QTimer对象,将信号timeout()与相应的槽函数相连,然后调用start()函数。接下来,每隔一段时间,定时器便会发出一次timeout()信号。 // 创建定时器对象 QTimer *timer = new QTimer(this) 阅读全文
posted @ 2025-09-02 18:07 一楼二栋 阅读(125) 评论(0) 推荐(0)
摘要: 1.智能指针的概念 智能指针是一种自动化内存管理工具,通过RAII(Resource Acquisition Is Initialization)技术实现。它们在构造时获取资源,在析构时自动释放资源,从而避免内存泄漏。 Qt 家族的指针类型 智能指针类型 等效STL类型 所有权语义 线程安全 适用场 阅读全文
posted @ 2025-09-02 18:07 一楼二栋 阅读(40) 评论(0) 推荐(0)
摘要: 多线程 QThread类提供了多线程的支持,一般从QThread继承定义自己的线程类。Qt提供了QMutex、QWaitCondition、QSemaphore等同步机制,可以方便地实现线程间的同步。和 Qt Concurrent 模块,可以方便地实现多线程编程。 C++11标准线程 使用std:: 阅读全文
posted @ 2025-09-02 18:06 一楼二栋 阅读(43) 评论(0) 推荐(0)
摘要: connect 连接 QObject::connect()是实现信号与槽机制的核心函数,用于建立对象间的通信。 1. 基本语法 Qt5 + 推荐语法(类型安全) connect(sender, &SenderClass::signalName, receiver, &ReceiverClass::s 阅读全文
posted @ 2025-09-02 18:03 一楼二栋 阅读(92) 评论(0) 推荐(0)
摘要: 1. 核心几何类概览 类名 描述 坐标类型 常用成员 QPoint 二维平面上的整数点 int x(), y(), rx(), ry()x(), y(), rx(), ry() QPointF 二维平面上的浮点数点 qreal (double) x(), y(), rx(), ry() QSize 阅读全文
posted @ 2025-09-02 18:01 一楼二栋 阅读(27) 评论(0) 推荐(0)