【问题标题】:how to crop image using yolo format image coordinate如何使用yolo格式图像坐标裁剪图像
【发布时间】:2021-11-06 06:54:41
【问题描述】:

问候 stackoverflow 社区, 我有 200 张图像,标签为 txt 文件,用于 yolo 自定义模型。
现在我想使用txt 坐标裁剪这些图像中存在的所有头部。
我试过opencv
但我遇到了错误。
你能帮我自动裁剪这些图像的所有头部吗?

请看更新代码:

import cv2

img = cv2.imread(<image path>)

dh, dw, _ = img.shape
print(dh,dw)

x,y,w,h = 0.360667, 0.089000, 0.113333, 0.130000

x,y,w,h = int(x*dw), int(y*dh), int(w*dw), int(h*dh)

print(x, y, w, h)

imgCrop = img[y:y+h,x:x+w]


cv2.imshow("Crop Image",imgCrop)

cv2.waitKey(0)

为了更好地理解问题,请查看这些图片:

【问题讨论】:

    标签: python opencv image-processing crop yolo


    【解决方案1】:

    您需要将这些浮点值转换为整数。为此,您可以将它们乘以图像的宽度和高度,然后将它们转换为整数。

    例子:

    x,y,h,w = int(x*img_width), int(y*img_height), int(h*img_higth), int(w*img_width)
    

    然后索引图片:

    imgCrop = img[x:x+w, y:y+h]
    

    【讨论】:

    • 试试img[y:y+h,x:x+w]。我颠倒了索引。
    • 先生。 @belfner 不好意思说你。你的方法我都试过了。但找不到确切的错误。我已经更新了上面的问题。能否请您看看最后一节和 img3、img4 和 img5,并告诉我实际问题出在哪里?
    猜你喜欢
    • 2016-12-09
    • 1970-01-01
    • 2021-09-01
    • 2020-06-28
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    相关资源
    最近更新 更多