机械荟萃山庄

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 1194|回复: 14

如何求得两坐标系的相对位姿

[复制链接]

6

主题

72

帖子

5278

积分

论坛元老

Rank: 8Rank: 8

积分
5278
发表于 2024-2-23 11:04:46 | 显示全部楼层 |阅读模式
本帖最后由 Xmy 于 2024-2-23 11:09 编辑

工作上遇到的问题,抽象成如下表述:

已知条件:某个刚体通过某种手段提取出关注的曲线C,在坐标系{A}中,对C进行采样,得到N个坐标点,Pi(i=1,...,N),在坐标系{B}中对C采样,得到M个坐标,Qj(j=1,...,M)。

补充说明:M与N不一定相等,而且Pi与Qj没有一一对应的关系,即P1不一定就是Q1,甚至P1在Q的集合中找不到对应的点,但他们都是C上点在不同坐标系的表达。

问:可以通过什么方法,求得坐标系{A}与{B}的关系?

有没有这方面研究的大侠,可以指导一下,谢谢

回复

使用道具 举报

86

主题

1189

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
13032
发表于 2024-2-23 11:16:45 | 显示全部楼层
坐标变换。点是同一个点,只是需要他在两个不同坐标系上的坐标。求出B坐标系相对于A坐标系的旋转矩阵就可以了。旋转矩阵可以看做是B三个轴分别在A三个坐标轴的投影,也就是9个方向余弦
回复 支持 反对

使用道具 举报

6

主题

72

帖子

5278

积分

论坛元老

Rank: 8Rank: 8

积分
5278
 楼主| 发表于 2024-2-23 11:44:46 | 显示全部楼层
华丽转身 发表于 2024-2-23 11:16
坐标变换。点是同一个点,只是需要他在两个不同坐标系上的坐标。求出B坐标系相对于A坐标系的旋转矩阵就可以 ...

是的,思路是这个思路,但是这么做有个前提,已知变换前后两个点是同一个点,但目前这个条件不满足
回复 支持 反对

使用道具 举报

41

主题

809

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12881
发表于 2024-2-23 11:48:36 | 显示全部楼层
终于有一个我懂的题目了

点评

Xmy
来吧,看你表演  发表于 2024-2-23 11:51
回复 支持 反对

使用道具 举报

41

主题

809

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12881
发表于 2024-2-23 11:58:58 | 显示全部楼层
求得坐标系{A}与{B}的关系?

精确求解有点困难,但是粗略求解没问题。

楼主没有说明是3D点还是2D点,我暂且当是3d点。

求坐标系变换关系之前,首先需要明确一点,就是两个坐标系的手性需要统一,否则是无法求出两个坐标系的变换关系的。即如果A是左手性,那么B必须也是左手性,才行。否则无法计算。

如果有对应关系,那么可以简单建模成一个非线性最小二乘问题,Exp(ξ)*Pi = Qj ,然后求解ξ即可,其中ξ是一个6X1的李代数。

但是楼主说,没有对应关系,工业界也有现成的算法,即ICP算法,中文叫最近邻迭代,如果你的描述没有偏差,测量的数据噪声也很小,那么直接调用这个算法,就可以求解出来两个坐标系的变换了,求解出来的也是一个李代数。
可以参考:https://zhuanlan.zhihu.com/p/397926700



评分

参与人数 1威望 +3 收起 理由
Xmy + 3 很给力!

查看全部评分

回复 支持 反对

使用道具 举报

0

主题

20

帖子

1412

积分

金牌会员

Rank: 6Rank: 6

积分
1412
发表于 2024-2-23 12:41:01 | 显示全部楼层
本帖最后由 ff231 于 2024-2-23 12:45 编辑

是不是基变换呢

回复 支持 反对

使用道具 举报

300

主题

6765

帖子

3万

积分

论坛元老

Rank: 8Rank: 8

积分
36382
发表于 2024-2-23 14:12:04 | 显示全部楼层
典型的线性变换了,A属于mxn 矩阵,B属于lxk矩阵,
需要先找一个A的基Ia属于nxn , 以及B的基Ib属于kxk, 一个线性
变换矩阵D 就是Ia基通过线性变换D后得到一个新的基就Ib。
D就是这个线性变化矩阵,使得矩阵A线性映射D下的B.

点评

你搜一下矩阵分析,里面有讲求解变换矩阵  发表于 2024-2-23 15:22
Xmy
基可以有多个,如何确定是你想要的那个呢?  发表于 2024-2-23 15:00
回复 支持 反对

使用道具 举报

1

主题

47

帖子

2077

积分

金牌会员

Rank: 6Rank: 6

积分
2077
发表于 2024-2-23 14:45:51 | 显示全部楼层
找本有限元的数看下就行了,现成的矩阵直接套
回复 支持 反对

使用道具 举报

3

主题

1252

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12522
发表于 2024-2-23 15:26:24 | 显示全部楼层
玩机器人的就成天鼓捣这些

点评

玩机器人不是玩应用的多吗?大部分是示教法,根本不用算  发表于 2024-2-23 15:45
书中横卧着整个过去的灵魂,书中深埋着整个未来的萌芽。
回复 支持 反对

使用道具 举报

300

主题

6765

帖子

3万

积分

论坛元老

Rank: 8Rank: 8

积分
36382
发表于 2024-2-23 23:48:12 | 显示全部楼层
本帖最后由 373527271 于 2024-2-23 23:52 编辑

问了一下, ChatGPT .
Matrix A with m x n dimension, and Matrix B with k x l dimension, and m, n for k, l no relation, how do I find one transfer may be linear transfer may be not linear make A via this transfer change to B ?
总的来书,用SVD 分解,应该可以发现两个矩阵之间的某种联系或变换。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|机械荟萃山庄 ( 辽ICP备16011317号-1 )

GMT+8, 2024-12-25 10:09 , Processed in 0.113862 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表