Skip to main content

compute the iou, slice picture etc.

Project description

ai_tool

ai tool

slice picture

from ai_tool.img_slide import yield_sub_img
# yield the sub image from the jpg
for bbox, sub_img in yield_sub_img("test.jpg", 0, 0, 180, 60):
    clip = "-".join([str(x) for x in bbox])
    print("sub img:{}".format(clip))
    cv2.imshow(clip, sub_img)
    cv2.waitKey(0)

IoU

compute the iou for tow boxes,

example box1 1, 2, 101, 102. location(1,2) is left-up, location(101,102) is right-down.

from ai_tool.bbox import BBox
bbox1 = BBox([1, 2, 101, 102])
bbox2 = BBox([11, 12, 121, 122])
iou = bbox1 / bbox2
print("iou", iou)
assert iou > 0.5

print('box1 S is', bbox1.S)
print('box1 & box2', bbox1 & bbox2)
print('box1 == box2', bbox1 == bbox2)
print('merge box1 + box2', bbox1 + bbox2)
print('merge box1 | box2', bbox1 | bbox2)

result is :

iou 0.5785714285714286
box1 S is 10000
box1 & box2 [11, 12, 101, 102]
box1 == box2 True
merge box1 + box2 [1, 2, 121, 122]
merge box1 | box2 [1, 2, 121, 122]

multi bbox operation

from ai_tool.bbox import BBoxes, BBox
bb1 = BBoxes(iou_thresh=0.6)
bb2 = BBoxes()

bb1.append([1,2, 101, 102])
bb1.append([1000, 2, 1101, 102])

bb2.append([11, 12, 111, 112])
bb2.append([1, 1002, 101, 1102])

# judge the bbox in bb1
print("[5, 5, 100, 100] in bb1", BBox([5, 5, 100, 100]) in bb1)
print("[100, 5, 200, 100] in bb1", BBox([100, 5, 200, 100]) in bb1)

# bb1 & bb2
print("bb1 & bb2", bb1 & bb2)
print("bb1 - bb2", bb1 - bb2)
print("bb2 - bb1", bb2 - bb1)

result is

[5, 5, 100, 100] in bb1 True
[100, 5, 200, 100] in bb1 False
bb1 & bb2 [[1, 2, 101, 102]]
bb1 - bb2 [[1000, 2, 1101, 102]]
bb2 - bb1 [[1, 1002, 101, 1102]]

Project details


Download files

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

Files for ai-tool, version 1.4
Filename, size File type Python version Upload date Hashes
Filename, size ai_tool-1.4-py3-none-any.whl (8.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size ai_tool-1.4.tar.gz (6.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page