代码之家  ›  专栏  ›  技术社区  ›  BAE

什么是u,v图像坐标?

  •  0
  • BAE  · 技术社区  · 5 年前

    我看见了 u,v image coordinates 在底部 here . 我下载了数据,其中一个样本是 [214.65 222.52 145.72 165.42 96.492 114.22 64.985 71.877 43.323 33.477 128.98 173.29 120.12 160.49 121.11 134.89 128. 98.462 175.26 177.23 177.23 151.63 178.22 130.95 177.23 98.462 212.68 175.26 214.65 118.15 215.63 80.738 208.74 68.923 249.11 173.29 242.22 122.09 237.29 86.646 234.34 48.246] .

    我确实找过,但找不到解释 U,V图像坐标 以及如何转换成x-y坐标。它不是 UV mapping ,因为数据不在[0,1]之间。我可能错了。

    欢迎任何评论。谢谢

    0 回复  |  直到 5 年前
        1
  •  0
  •   abaghiyan    5 年前

    为了更加自信,我们可以使用Matlab/Octave或OpenCv在相应的彩色图像上绘制这些点,并查看它们的位置是否与标记的关节匹配。对于连接结构,我们可以看相同的 README file W, T0, T1, T2, T3, I0, I1, I2, I3, M0, M1, M2, M3, R0, R1, R2, R3, L0, L1, L2, L3. 每个关节有2个坐标,因此42个数字的序列对应于序列中相应关节的u,v(x,y)坐标。

    我尝试使用以下代码在Matlab/Octave中直接绘制图像和二维点:

    clc; clear;
    
    im = imread('0001_color_composed.png');
    data = csvread('0001_joint2D.txt');
    x = zeros(length(data)/2,1);
    y = x;
    
    for i = 1: length(data)/2
        x(i) = data(2*i-1);
        y(i) = data(2*i);
    end
    
    imshow(im);
    hold on;
    plot(x, y, 'go');
    

    而这些 image annotation . 如您在所有u的下面的结果图像中所看到的,v坐标对应于从图像左上角开始以像素计算的x和y中的像素坐标,即u=x,v=y(好像使用 imshow() ,将连续打印的坐标框原点设置为图像坐标框原点(位于左上角)。

    enter image description here