座標x1y1x2y2轉yolo標註格式

2021-10-06 11:33:07 字數 2264 閱讀 4122

# -*- coding:utf-8 -*- 

#作用:

#將標註檔案轉化成yolo格式的txt標註檔案##

import sys

import os

import cv2

import random

data_base_dir =

"/root/dyg/test_dir/annots/"

# data_base_dir = "/root/dyg/disc_data/annots"

file_list =

forfile

in os.listdir(data_base_dir):if

file

.endswith(

".txt"):

# print(file)

img_name =

file[:

-4]print

(file

)# print(file[:-4]) #得到名,不帶字尾

)# 返回乙個檔案物件

print

('raw_file is '

+ data_base_dir +

file

) new_file =

open

('/root/dyg/test_dir/result/'

+file

,'a+'

) line = raw_file.readline(

)# 呼叫檔案的 readline()方法

while line:

print

(line)

line = line.split(

" ")

print

(line[1]

)# line[0] = float(line[0])

x1 =

float

(line[1]

)print

(x1)

y1 =

float

(line[2]

) x2 =

float

(line[3]

) y2 =

float

(line[4]

) h = imginfo[0]

w = imginfo[1]

print

('h== '

+str

(h))

print

('w== '

+str

(w))

new_x =

str(

(x1 + x2)/(

2*w)

) new_y =

str(

(y1 + y2)/(

2*h)

) new_w =

str(

(x2 - x1)

/w) new_h =

str(

(y2 - y1)

/h) new_file.write(line[0]

+' '

+new_x+

' '+new_y+

' '+new_w+

' '+new_h+

'\n'

)print

(line[0]

+' '

+new_x+

' '+new_y+

' '+new_w+

' '+new_h+

'\n'

)# print line # 後面跟 ',' 將忽略換行符

#print(line, end = '')  # 在 python 3 中使用

line = raw_file.readline(

)

new_file.close(

)raw_file.close(

)

1 X 1 Y 1 N!的兩種O n 做法

題目大意 求1 x 1 y 1 n!的答案對數。解題思路1 設 m n 由等式知x,y必定大於n 所以再設 x n k m k 帶入 1 m 1 x 1 y 中化簡得到y m m k m,因y為整數,所以要求k整除m m,即k為m m的因子,問題便轉化為求n n 的因子個數,設n p1 e1 p2 ...

Jenkins 1 x許可權配置(相容2 x)

說明 1.x版本的jenkins預設是沒有任何許可權限制,任何人都可以訪問。需要用到的外掛程式 role based authorization strategy 具體配置 0 設定jenkins的安全域為 jenkins專有使用者資料庫 系統管理 configure global security...

以 x1,x2,x3,x4 方式的查詢

選單崗位可以以xx,xx,xx,xx的方式新增,gu laicheng,2007.8.21 session datacmd commandtext select from menu where level1 glevel1 and level2 glevel2 and level3 00 and p...