将OpenImage坐标转换为DarkNet格式

时间:2019-08-24 14:29:28

标签: c# .net yolo

如何将屏幕空间坐标转换为 DarkNet Yolo 格式?

图片尺寸:

width: 1024
height: 768

包装盒尺寸:

x: 51.84
y: 175.359741
width: 988.16
height: 639.999756

归一化我理解点对图像的划分,因为x = x / width 而是将x,y,width,height坐标转换为darknet格式。

如果有人可以将我指向c#方向

btw darknet格式叫什么?,因为原始格式是屏幕空间。 这样会使谷歌搜索容易得多。

1 个答案:

答案 0 :(得分:1)

This可能会有所帮助。 YOLO格式为:

<object-class> <x_center> <y_center> <width> <height>

其中所有<x_center> , <y_center> , <width> , <height>都是相对于图像的宽度和高度的浮点值,它可以等于0.0到1.0。

  • width =对象的宽度/图像的宽度
  • height =对象的高度/图像的高度
  • x_center和y_center是每个对象的中心坐标

例如,要计算中心:

  • x_center =(x_min +(x_max-x_min)/ 2)/图片宽度
  • y_center =(y_min +(y_max-y_min)/ 2)/图片宽度

在您的示例中:

width = 988.16 / 1024
height = 639.999756 / 768
x_center = (51.84 + 988.16) / (2 * 1024)
y_center = (175.359741 + 639.999756) / (2 * 768)

我不确定您的文本文件的外观。如果您可以将文本文件的示例发布到read并进行转换,将会很有帮助。 我也不知道Darknet格式是什么。