개정판 9c91a597
issue #1366: add file
Change-Id: Ia7e18e390c686e3aa8706b822c945dc7a3843acf
DTI_PID/WebServer/symbol_training/src/helpers.py | ||
---|---|---|
1 |
#convert from Yolo_mark to opencv format |
|
2 |
def yoloFormattocv(x1, y1, x2, y2, H, W): |
|
3 |
bbox_width = x2 * W |
|
4 |
bbox_height = y2 * H |
|
5 |
center_x = x1 * W |
|
6 |
center_y = y1 * H |
|
7 |
|
|
8 |
voc = [] |
|
9 |
|
|
10 |
voc.append(center_x - (bbox_width / 2)) |
|
11 |
voc.append(center_y - (bbox_height / 2)) |
|
12 |
voc.append(center_x + (bbox_width / 2)) |
|
13 |
voc.append(center_y + (bbox_height / 2)) |
|
14 |
|
|
15 |
return [int(v) for v in voc] |
|
16 |
|
|
17 |
# convert from opencv format to yolo format |
|
18 |
# H,W is the image height and width |
|
19 |
def cvFormattoYolo(corner, H, W): |
|
20 |
bbox_W = corner[3] - corner[1] |
|
21 |
bbox_H = corner[4] - corner[2] |
|
22 |
|
|
23 |
center_bbox_x = (corner[1] + corner[3]) / 2 |
|
24 |
center_bbox_y = (corner[2] + corner[4]) / 2 |
|
25 |
|
|
26 |
return corner[0], round(center_bbox_x / W, 6), round(center_bbox_y / H, 6), round(bbox_W / W, 6), round(bbox_H / H, |
|
27 |
6) |
내보내기 Unified diff