Spaces:
Running
Running
turhancan97
commited on
Commit
•
b548adc
1
Parent(s):
161fbc4
app deploy with multiple object
Browse files
app.py
CHANGED
@@ -15,8 +15,8 @@ def drawAxis(img, p_, q_, color, scale):
|
|
15 |
hypotenuse = sqrt((p[1] - q[1]) * (p[1] - q[1]) + (p[0] - q[0]) * (p[0] - q[0]))
|
16 |
|
17 |
# Here we lengthen the arrow by a factor of scale
|
18 |
-
q[0] = p[0] - scale * hypotenuse * cos(angle)
|
19 |
-
q[1] = p[1] - scale * hypotenuse * sin(angle)
|
20 |
cv2.line(img, (int(p[0]), int(p[1])), (int(q[0]), int(q[1])), color, 3, cv2.LINE_AA)
|
21 |
|
22 |
# create the arrow hooks
|
@@ -69,6 +69,7 @@ def getOrientation(pts, img):
|
|
69 |
file_urls = [
|
70 |
'https://github.com/lucarei/orientation-detection-robotic-grasping/assets/22428774/cefd9731-c57c-428b-b401-fd54a8bd0a95',
|
71 |
'https://github.com/lucarei/orientation-detection-robotic-grasping/assets/22428774/acbad76a-33f9-4028-b012-4ece5998c272',
|
|
|
72 |
'https://www.dropbox.com/s/7sjfwncffg8xej2/video_7.mp4?dl=1'
|
73 |
]
|
74 |
|
@@ -103,26 +104,26 @@ def show_preds_image(image_path):
|
|
103 |
dim=(width,height)
|
104 |
|
105 |
outputs = model.predict(source=img_res_toshow)
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
|
127 |
results = outputs[0].cpu().numpy()
|
128 |
for i, det in enumerate(results.boxes.xyxy):
|
|
|
15 |
hypotenuse = sqrt((p[1] - q[1]) * (p[1] - q[1]) + (p[0] - q[0]) * (p[0] - q[0]))
|
16 |
|
17 |
# Here we lengthen the arrow by a factor of scale
|
18 |
+
q[0] = p[0] - scale * hypotenuse/3 * cos(angle)
|
19 |
+
q[1] = p[1] - scale * hypotenuse/3 * sin(angle)
|
20 |
cv2.line(img, (int(p[0]), int(p[1])), (int(q[0]), int(q[1])), color, 3, cv2.LINE_AA)
|
21 |
|
22 |
# create the arrow hooks
|
|
|
69 |
file_urls = [
|
70 |
'https://github.com/lucarei/orientation-detection-robotic-grasping/assets/22428774/cefd9731-c57c-428b-b401-fd54a8bd0a95',
|
71 |
'https://github.com/lucarei/orientation-detection-robotic-grasping/assets/22428774/acbad76a-33f9-4028-b012-4ece5998c272',
|
72 |
+
'https://github.com/lucarei/orientation-detection-robotic-grasping/assets/22428774/ce8a0fb9-99ea-4952-bcc4-3afa023066d9',
|
73 |
'https://www.dropbox.com/s/7sjfwncffg8xej2/video_7.mp4?dl=1'
|
74 |
]
|
75 |
|
|
|
104 |
dim=(width,height)
|
105 |
|
106 |
outputs = model.predict(source=img_res_toshow)
|
107 |
+
for object in range(len(outputs[0].masks.masks)):
|
108 |
+
#obtain BW image
|
109 |
+
bw=(outputs[0].masks.masks[object].cpu().numpy() * 255).astype("uint8")
|
110 |
+
#BW image with same dimention of initial image
|
111 |
+
bw=cv2.resize(bw, dim, interpolation = cv2.INTER_AREA)
|
112 |
+
img=img_res_toshow
|
113 |
+
contours, _ = cv2.findContours(bw, cv2.RETR_LIST, cv2.CHAIN_APPROX_NONE)
|
114 |
+
for i, c in enumerate(contours):
|
115 |
+
# Calculate the area of each contour
|
116 |
+
area = cv2.contourArea(c)
|
117 |
+
|
118 |
+
# Ignore contours that are too small or too large
|
119 |
+
if area < 2500 or 500000 < area:
|
120 |
+
continue
|
121 |
+
|
122 |
+
# Draw each contour only for visualisation purposes
|
123 |
+
cv2.drawContours(img, contours, i, (0, 0, 255), 2)
|
124 |
+
|
125 |
+
# Find the orientation of each shape
|
126 |
+
angle_deg = getOrientation(c, img)
|
127 |
|
128 |
results = outputs[0].cpu().numpy()
|
129 |
for i, det in enumerate(results.boxes.xyxy):
|