如何在 YUV 420 半平面图像中应用 homography/inverse 单应性?
How to apply homography/inverse homography in YUV 420 semi-planar images?
我有一个 YUV 420 半平面格式的图像,其中字节以这种方式存储:
[Y1 Y2 ... [U1 V1....
Yk Yk+1...] Uk' Uk'+1]
其中 Y 平面的大小是 UV 平面的两倍,并且对于每个 2*2 矩阵的 Y 值,有 1 个 U 和 1 个 V 值。
我想在不将其转换为 RGB 的情况下对此图像应用单应矩阵。因此,对于 Y 平面执行此操作很容易,因为 Y 值与图像的 x-y 像素坐标具有一对一映射,但是如何对 UV 平面执行此操作,因为 UV 值与 x-y 没有直接映射像素坐标?
我是通过仅对偶数 x-y 坐标填充 UV 平面来实现的。
首先,我通过应用逆单应性找出原始图像中该像素位置的 Y 坐标。然后,我找到了该 Y 坐标对应的 UV 坐标,并使用该位置的值来填充我的新图像的 UV 平面。
我有一个 YUV 420 半平面格式的图像,其中字节以这种方式存储:
[Y1 Y2 ... [U1 V1....
Yk Yk+1...] Uk' Uk'+1]
其中 Y 平面的大小是 UV 平面的两倍,并且对于每个 2*2 矩阵的 Y 值,有 1 个 U 和 1 个 V 值。
我想在不将其转换为 RGB 的情况下对此图像应用单应矩阵。因此,对于 Y 平面执行此操作很容易,因为 Y 值与图像的 x-y 像素坐标具有一对一映射,但是如何对 UV 平面执行此操作,因为 UV 值与 x-y 没有直接映射像素坐标?
我是通过仅对偶数 x-y 坐标填充 UV 平面来实现的。
首先,我通过应用逆单应性找出原始图像中该像素位置的 Y 坐标。然后,我找到了该 Y 坐标对应的 UV 坐标,并使用该位置的值来填充我的新图像的 UV 平面。