Skip to main content

Just use for myself

Project description

How to use

from ftd.module.detector import Detector

# 解析yaml配置文件
cfg = LoadYaml(opt.yaml)    
print(cfg) 
device=torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
model=Detector(cfg.category_num,True).to(device)

# 数据预处理
ori_img = cv2.imread(opt.img)
res_img = cv2.resize(ori_img, (cfg.input_width, cfg.input_height), interpolation = cv2.INTER_LINEAR) 
img = res_img.reshape(1, cfg.input_height, cfg.input_width, 3)
img = torch.from_numpy(img.transpose(0, 3, 1, 2))
img = img.to(device).float() / 255.0

# 模型推理
start = time.perf_counter()
preds = model(img)
end = time.perf_counter()
time = (end - start) * 1000.
print("forward time:%fms"%time)

# 特征图后处理
output = handle_preds(preds, device, opt.thresh)

# 加载label names
LABEL_NAMES = []
with open(cfg.names, 'r') as f:
    for line in f.readlines():
        LABEL_NAMES.append(line.strip())

H, W, _ = ori_img.shape
scale_h, scale_w = H / cfg.input_height, W / cfg.input_width

# 绘制预测框
for box in output[0]:
    print(box)
    box = box.tolist()
    
    obj_score = box[4]
    category = LABEL_NAMES[int(box[5])]

    x1, y1 = int(box[0] * W), int(box[1] * H)
    x2, y2 = int(box[2] * W), int(box[3] * H)

    cv2.rectangle(ori_img, (x1, y1), (x2, y2), (255, 255, 0), 2)
    cv2.putText(ori_img, '%.2f' % obj_score, (x1, y1 - 5), 0, 0.7, (0, 255, 0), 2)	
    cv2.putText(ori_img, category, (x1, y1 - 25), 0, 0.7, (0, 255, 0), 2)

cv2.imwrite("result.png", ori_img)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftdcherub-0.5.tar.gz (585.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ftdcherub-0.5-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file ftdcherub-0.5.tar.gz.

File metadata

  • Download URL: ftdcherub-0.5.tar.gz
  • Upload date:
  • Size: 585.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for ftdcherub-0.5.tar.gz
Algorithm Hash digest
SHA256 413aee716045f798cfb711837c8b7c992cb3c503a5584e3353b1ba441641dfb2
MD5 e59e29710f755c868d1732404997b196
BLAKE2b-256 ece9e1486378a0b6fe17cc853c8de9e35a1043548e210829140ac8aa1abdcb0d

See more details on using hashes here.

File details

Details for the file ftdcherub-0.5-py3-none-any.whl.

File metadata

  • Download URL: ftdcherub-0.5-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for ftdcherub-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ed0d70fe643311009a4f3bf5a8087c994f12f7f00c82ee4644cffa5164057976
MD5 619bea378d4fc3e5d2e07fa0dd5b1af2
BLAKE2b-256 b4c72358e90de8bf5c393dea65fd59926eb5a94f9ae891a874c9080e5808cd90

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page