自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(129)
  • 资源 (5)
  • 收藏
  • 关注

原创 其他博客

新浪博客 http://blog.sina.com.cn/guoguojun

2011-03-07 09:39:00 840

原创 数据处理之聚类

本文探讨了图像处理中标志点提取与编码识别的工程实现难点,重点介绍使用灰度质心法提取标志点,并通过并查集(DSU)高效实现多点聚类。针对大量点时KNN搜索效率低的问题,提出基于传递连通性的聚类方法:利用DSU动态合并相近点,循环仅更新父节点数组,最后通过路径压缩归集生成簇。该方案避免了复杂嵌套与碎片化分组,显著提升解码效率,体现了AI辅助下算法理解与工程落地的便捷性。

2026-09-23 12:08:14 290

原创 数据处理之卡尔曼滤波

高帧率测量产生海量数据,需有效处理。针对位移差分求速度、加速度时的波动,采用卡尔曼滤波(均加速模型)实时解算。其原理基于历史预测与测量值调整权重,异常时加大预测权。实践有限,后续待深化。AI工具在数据分析和可视化上高效直观,利于问题定位与算法优化。

2026-09-04 12:30:18 161

原创 opencv 与摄影测量 相机坐标系的区别

摘要:OpenCV与摄影测量中的相机坐标系与图像/像平面坐标系关系图展示了两种不同的建模视角。OpenCV采用计算机视觉惯例,以图像左上角为原点,向下为Y轴正方向;而摄影测量学以像主点为原点,向上为Y轴正方向,符合测绘领域传统。两者Z轴均沿光轴指向场景,但坐标系旋转方向存在差异,反映了不同学科对成像几何解释的特点。这导致坐标转换时需注意Y轴方向及旋转矩阵定义的差异。

2026-06-08 09:09:33 131

原创 图像数据的宽度不是4的倍数

BMP图像格式要求宽度必须是4的倍数,这是由于其文件结构决定的。在保存BMP文件或使用相关API时,实际内存分配需按4字节对齐(如1281像素宽度需补至1284字节),但显示时仍使用原始像素宽度。BMP解码器会区分逻辑宽度(显示用)和存储行宽(内存寻址用),前者保持原始尺寸,后者满足对齐要求。这种设计确保了文件格式兼容性,同时不影响显示效果。

2026-04-28 15:23:54 44

原创 像点坐标畸变逆改正

本文介绍了相机畸变校正的两种计算方法:正向畸变改正和逆向求解原始坐标。正向畸变模型采用十参数模型,包括径向畸变、偏心畸变和非平面畸变分量,通过公式直接计算改正后的坐标。逆向求解则采用迭代法,通过建立残差方程并简化雅可比矩阵,逐步逼近原始坐标值。两种方法均基于相同的畸变模型参数,但计算方向相反,逆向求解需要多次迭代以达到足够精度。该方法为相机标定和图像校正提供了实用的数值计算方案。

2026-04-17 19:15:00 65

原创 环形编码识别

本文介绍了工业摄影测量中环形编码标志点的识别方法。该编码由中心圆点和外围10段黑白圆环组成,通过二进制表示唯一ID。识别过程包括:1)定位中心圆点;2)设置比例因子确定编码区域;3)角度分割获取二进制序列。为解决旋转问题,采用循环移位取最小值作为唯一标识。文章还提到不同编码标准存在差异,推荐以AICON标准为基础的14位编码方案,可生成516个编码值,并提供了编码图像生成网站的参考链接。

2026-02-28 16:38:54 489

原创 坐标系之间的转换关系2

本文讨论了不同坐标系转换矩阵的计算方法。针对三个坐标系A、B、C,当以A为当前坐标系时,已知B和C相对于A的转换矩阵Rab和Rac,推导了B到C的转换矩阵计算方法。关键区别在于变换参考坐标系的选择:左乘表示在固定坐标系下的变换,右乘表示在局部坐标系下的变换。文中通过4×4齐次变换矩阵的运算规则,解释了左乘(绕定系)和右乘(绕动系)的本质差异,并指出其计算方式与旋转系统一致。

2026-02-12 09:16:49 464

原创 高速测量中的实时数据处理

本文探讨了100帧/秒数据采集下的实时处理方法。首先量化各处理环节耗时,包括图像采集、处理、坐标对齐、三维重建等步骤;其次采用多级队列和线程分离策略,将不同处理阶段解耦;最后针对非关键环节实施降频处理。通过时间量化指导任务分配,在保证数据完整性的同时优化处理效率,实现结果显示的低延迟。该方法平衡了处理速度与实时性需求,为中等速率场景提供了可行的实时处理方案。

2026-01-27 11:09:16 287

原创 坐标系之间得相互转换

摘要:本文讨论了坐标系转换的基本概念和矩阵表示方法。当坐标系A为当前坐标系时,坐标系B的参数矩阵Rab表示从A到B的变换。对于坐标点,该矩阵可实现B到A的坐标转换。文章介绍了使用齐次矩阵进行坐标系转换的方法,并给出了坐标系类的接口设计示例,包括点坐标和坐标系之间的转换函数。通过将坐标系视为当前坐标系下的新坐标系,可以更好地理解这些转换函数的作用机制。

2025-12-05 15:35:11 311

原创 机械臂与相机的手眼标定

摘要:本文介绍了基于AX=XB手眼标定方程的相机与机械臂末端标定方法。针对库卡机械臂固定轴ZYX系统,提出通过相对运动变换求解位姿关系,即A=A₂⁻¹×A₁表示机械臂末端相对变换,B=B₂×B₁⁻¹表示相机观测相对变换。关键实现要点包括:1)数据组织需采用相邻位姿的相对变换;2)运动过程需包含足够的角度变化;3)OpenCV函数需输入绝对位姿。实验表明直接标定精度约1-2mm,采用空间位置补偿可将精度提升至0.2mm。(149字)

2025-10-31 11:35:34 568

原创 mfc工程中进度条样式

MFC开发中进度条样式不一致的解决方法:在stdafx.h文件中,默认的Common Controls版本6.0加载代码被_UNICODE宏条件编译限制。若使用多字节字符集(MBCS),只需注释掉#ifdef_UNICODE和#endif两行代码,使manifest依赖项在非Unicode项目中也生效,即可解决运行时控件样式与资源编辑器显示不一致的问题。这是最简单直接的修改方式,无需改动其他代码。

2025-10-17 09:43:09 249

原创 库卡机械臂的转角系统以及固定轴和欧拉角的计算方式

同一个旋转矩阵计算不同的转角系统的旋转角时,计算得到的欧拉角Rx Ry Rz 在数值上与固定轴的Rz Ry Rx对应的数值相同。当前坐标系为基坐标系时,abc为沿着基坐标系固定轴旋转的角度,分别对应为Rz Ry Rx。固定轴XYZ = 欧拉角ZYX R​=Rz⋅Ry​⋅Rx​​。欧拉角XYZ = 固定轴ZYX R=Rx​⋅Ry​⋅Rz​。库卡机械臂的转角为abc。

2025-10-10 15:14:36 364

原创 CTreeCtrl 设置图标

但是注意有个坑,虽然图像位数没有限制,创建图像列表时,也有ILC_COLOR32类型可供选择,但是软件实际只能显示出24位效果。(也可能有其他原因导致,但是目前没找到原因)使用CTreeCtrl 进行设置导航视图时,有时候需要设置图标,一般使用如下代码。如果图标资源是PNG格式,也可以使用。如果使用了32位图像,效果看运气。所以最好添加时,直接使用24位。mfc界面修改真难受。

2025-02-05 16:29:28 323

原创 std::vector 删除指定位置元素

如果根据条件找到数组中一个数值,需要进行删除,无法直接对it进行删除,需要改为下面这个操作。使用的函数还是erase,但是需要有位置的索引,所以换成这种方式进行遍历,才可以。经常使用std::vector的都知道,我一般循环遍历时,都这样使用。

2024-10-11 17:06:39 1092 1

转载 Global Reset 的缺陷

相机的全局重置模式的缺陷

2024-09-05 18:34:00 1197

转载 使用udev规则启动systemd服务并传递内核参数

udev规则 启动 USB挂载

2024-08-02 17:38:43 896

原创 C++11 字符串类std::string 使用

用法演示涵盖各种字符串常编程应用包括检查文件扩展名称、截取,查找字符串、拼接字符串、把这种其它类型数据转换为字符串std::tostring这个方法是万能的。

2024-02-02 14:35:11 908

转载 Linux物理网卡聚合及桥接

linux 桥接 交换机

2023-06-09 15:27:35 987

转载 不同算法复杂度的矩阵求和

矩阵求和 算法复杂度O(n*n) O(n) O(1)

2023-06-09 10:10:16 295

原创 linux下串口调试

linux 串口调试

2023-06-07 11:57:15 4847

原创 点云处理 学习库

点云处理

2023-06-03 15:29:17 809

转载 CGAL入门解释

初步了解 CGAL的相关知识

2023-05-09 15:45:55 353

转载 Assimp的安装编译及使用过程全纪录

Assimp配置方式

2023-04-24 15:45:45 5077 2

原创 查询局域网中已连接的设备ip

局域网ip查询

2023-04-12 14:12:45 1563

原创 DD 进行系统备份总结

dd

2023-03-16 13:20:08 715

转载 用dd实现linux硬盘备份

dd

2023-03-15 16:11:43 1394

原创 动态创建工具栏

重绘菜单

2023-02-13 16:46:01 242

原创 VS 调试时打开cmd窗口

cmd

2022-12-30 17:24:45 1707

原创 字体的单位

字体单位

2022-12-28 10:06:52 170

转载 MFC 中使用QT开发界面

mfc中使用QT

2022-12-22 14:11:44 2351

转载 MFC中调用QT类库

MFC中调用QT类库。

2022-12-22 11:16:05 870

转载 工业相机的曝光方式:全局曝光、卷帘曝光、全局复位释放曝光区别

相机曝光方式

2022-12-09 11:01:47 5232

原创 图像显示在对话框上的一些问题

图像显示 对话框 缩放 拖动

2022-11-11 14:12:44 397

原创 给程序添加运行时调试窗口

调试窗口

2022-11-10 16:03:09 169

转载 虚拟显示器

虚拟显示器

2022-10-24 18:23:13 4552 5

转载 【转】C++类设计和实现的十大最佳实践

C++类设计相关

2022-10-11 16:39:12 362

原创 如何实现使用三点新建坐标系

三点新建坐标系

2022-07-14 11:00:39 5868 1

原创 CString Fromat 按照指定位数格式化整型数据

示例,将整型变量以9位数字进行格式化,比如 1 -> 000000001strItem1.Format("%09i",nNum);

2022-01-06 17:33:40 400

原创 十进制转十六进制

输入一个十进制整数,将其转换成十六进制数输出,并提取每一字节所表示的十六进制数值逐一输出。测试数据如下:分析:从控制台输入一个十进制整数,将其转换成十六进制数输出,接着提取其4个字节。用到按位与运算符“&”、右移位运算符“>>”。ps:“0x”是十六进制数的前缀。位(bit):度量数据的最小单位,表示一位二进制信息;字节(byte):由八位二进制数字组成(1 byte = 8 bit)。1个字节表示2位十六进制数。新建一个Visual C 控制台程序#inclu.

2021-12-14 18:16:22 2760

Google C++编程风格指南

最新的Google C++编程风格指南,PDF格式,中文清晰版。与其他的编程指南相比,更加实用。可以提高规范性和代码执行效率以及安全性。

2011-03-12

Time-of-Flight Camera – An Introduction

2014年的一篇文章,解释了一些TOF的原理

2023-07-27

TOF Camera Principles Methods and Applications

更详细的原理解释TOF相机的工作模式

2023-07-27

RAPID语言概述.pdf

ABB提供的对机械臂进行开发的编程语言 RAPID的使用文档。内含函数说明和示例。对每一个函数都有详细说明,对开发者有很大帮助。

2020-06-30

快速扫描网络的小工具Quickping

可以快速定位局域网内,与当前网络连接的设备信息

2023-04-12

TCP/UDP网络测试工具

支持TCP UDP 各种服务器 客户端创建 测试连接

2023-04-12

扫描局域网中所有连接的设备ip和可用端口号

扫描局域网中所有连接的设备ip和可用端口号

2023-04-12

使用Directshow控制USB摄像头

使用Directshow控制USB摄像头,包括实时预览和获取一张图像功能

2016-04-18

spy++进程分析工具

spy++,了解的都知道好用

2016-08-18

CListCtrl排序功能程序

对CListCtrl排序有简单的功能实现

2013-12-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除