Commit ae9b6670 authored by Sikhin VC's avatar Sikhin VC

added api recording feature

parent edd59a2c
This source diff could not be displayed because it is too large. You can view the blob instead.
2037e91b-5127-4bfb-867e-e8dfdaf788531673876778.875812.avi
7da72f97-f6ef-4541-9c27-c654581a47861673876810.1505582.avi
1e846e2a-9454-46a6-9e5e-0f2942fecddd1673876840.7609582.avi
2bf8e0b4-c669-4ec9-875a-c306e1a7cafc1673918679.660369.avi
6b069622-408f-4b08-b65f-42628832ae0f1673918710.2025747.avi
ef38a9a9-9e5c-461d-ab5b-e047a9bb23b11673918927.7348251.avi
4d97cde4-fa41-4ae4-86b8-d811f6b96a111673918958.1766603.avi
2548de5a-716d-4296-9aa8-72875fdfed0a1673918988.5155804.avi
5830b368-7a89-473b-95d2-88c25426d57c1673919018.9897242.avi
f61c730f-59c9-4c5b-8b80-beedb7d93a0d1673919049.2783659.avi
f625b670-f3dc-44ab-bdac-1bb073bf1e1a1673919079.727069.avi
a179becb-f3df-42e6-a0f6-bf999862c48b1673919110.3672595.avi
a1055d17-dbe0-42fe-9a5a-7cc877e863f01673919140.8465016.avi
25f68c42-d2b0-4d31-a651-1f7bd828e5a31673919171.1900787.avi
42f7b82a-ee30-49df-86fe-f8acfdb41d5f1673919201.623807.avi
926d531b-f9a3-4545-8f10-72232c1a19581673919232.0070171.avi
5a8bc7ec-0840-45e2-b823-9251df6ed4521673919262.2924252.avi
......@@ -36,7 +36,7 @@ from yolov5.detect import load_model
import random
import psycopg2
import time
import requests
......@@ -444,9 +444,22 @@ class Ppe(ModelWrapper):
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......@@ -471,9 +484,9 @@ class Ppe(ModelWrapper):
# violated_items = violated_items
# print(violated_items)
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].write(frame)
# if (object_id in self.active_rec):
# rec_inf = self.active_rec[object_id]
# rec_inf[1].write(frame)
for elem in violations:
......@@ -485,10 +498,15 @@ class Ppe(ModelWrapper):
result = self.video_write(frame, unique_id)
# result = self.video_write(frame, unique_id)
requests.post('http://localhost:2328/items/', json={
"rtsp": "rtsp://192.168.3.181:8554/stream",
"name": str(unique_id)
})
print("unique id is:: ", str(unique_id))
self.active_rec[object_id] = [time.time(), result, unique_id, temp_violation_list]
result.write(frame)
self.active_rec[object_id] = [time.time(), "result", unique_id, temp_violation_list]
# result.write(frame)
# self.send_payload(frame=resize_to_64_64(frame), message=temp_violation_list, event = violated_items,frame_id=self.frame_id)
......@@ -506,19 +524,19 @@ class Ppe(ModelWrapper):
self.conn.commit()
cur.close()
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
# try:
#
# sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# # for violated_items in violations:
# # present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
# cur = self.conn.cursor()
# frame_count = self.frame_id
# file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
# cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
# self.conn.commit()
# cur.close()
# except:
# self.conn.rollback()
else:
......@@ -528,9 +546,24 @@ class Ppe(ModelWrapper):
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql,
[frame_count, 4, str(unique_id), datetime.datetime.now(), file_path,
v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......@@ -553,9 +586,24 @@ class Ppe(ModelWrapper):
# cv2.waitKey(0)
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......@@ -571,9 +619,9 @@ class Ppe(ModelWrapper):
# print("violations")
# print(violations)
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].write(frame)
# if (object_id in self.active_rec):
# rec_inf = self.active_rec[object_id]
# rec_inf[1].write(frame)
for elem in violations:
......@@ -598,10 +646,14 @@ class Ppe(ModelWrapper):
# with open("recorded_video_list.txt", "a") as f:
# f.write(unique_id + ".avi")
# f.write("\n")
result = self.video_write(frame, unique_id)
# result = self.video_write(frame, unique_id)
requests.post('http://localhost:2328/items/', json={
"rtsp": "rtsp://192.168.3.181:8554/stream",
"name": str(unique_id)
})
print("unique id is:: ", str(unique_id))
self.active_rec[object_id] = [time.time(), result, unique_id, temp_violation_list]
result.write(frame)
self.active_rec[object_id] = [time.time(), "result", unique_id, temp_violation_list]
# result.write(frame)
# self.send_payload(frame=resize_to_64_64(frame), message=temp_violation_list , event = violated_items, frame_id=self.frame_id)
self.reported_violation_ids[object_id] = time.time()
for v in temp_violation_list:
......@@ -615,20 +667,20 @@ class Ppe(ModelWrapper):
cur.execute(sql, [4, frame_count, datetime.datetime.now(), v])
self.conn.commit()
cur.close()
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
# try:
#
# sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# # for violated_items in violations:
# # present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
# cur = self.conn.cursor()
# # cur.execute("ROLLBACK")
# frame_count = self.frame_id
# file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
# cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
# self.conn.commit()
# cur.close()
# except:
# self.conn.rollback()
else:
time_diff = time.time() - self.reported_violation_ids[object_id]
......@@ -637,9 +689,25 @@ class Ppe(ModelWrapper):
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql,
[frame_count, 4, str(unique_id), datetime.datetime.now(), file_path,
v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......@@ -660,9 +728,24 @@ class Ppe(ModelWrapper):
# cv2.waitKey(0)
if(object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......@@ -688,9 +771,9 @@ class Ppe(ModelWrapper):
violated_items = violated_items
# violated_items_2 = violated_items_2 + ", Air Breathing Mask"
# print(violated_items)
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].write(frame)
# if (object_id in self.active_rec):
# rec_inf = self.active_rec[object_id]
# rec_inf[1].write(frame)
for elem in violations:
......@@ -703,10 +786,14 @@ class Ppe(ModelWrapper):
# with open("recorded_video_list.txt", "a") as f:
# f.write(unique_id + ".avi")
# f.write("\n")
result = self.video_write(frame, unique_id)
# result = self.video_write(frame, unique_id)
requests.post('http://localhost:2328/items/', json={
"rtsp": "rtsp://192.168.3.181:8554/stream",
"name": str(unique_id)
})
print("unique id is:: ", str(unique_id))
self.active_rec[object_id] = [time.time(), result, unique_id, temp_violation_list]
result.write(frame)
self.active_rec[object_id] = [time.time(), "result", unique_id, temp_violation_list]
# result.write(frame)
# self.send_payload(frame=resize_to_64_64(frame), message=temp_violation_list, event = violated_items, frame_id=self.frame_id)
self.reported_violation_ids[object_id] = time.time()
for v in temp_violation_list:
......@@ -720,20 +807,20 @@ class Ppe(ModelWrapper):
cur.execute(sql, [4, frame_count, datetime.datetime.now(), v])
self.conn.commit()
cur.close()
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
# try:
#
# sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# # for violated_items in violations:
# # present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
# cur = self.conn.cursor()
# # cur.execute("ROLLBACK")
# frame_count = self.frame_id
# file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
# cur.execute(sql, [frame_count, 4, str(unique_id), datetime.datetime.now(), file_path, v])
# self.conn.commit()
# cur.close()
# except:
# self.conn.rollback()
......@@ -746,9 +833,26 @@ class Ppe(ModelWrapper):
if (object_id in self.active_rec):
rec_inf = self.active_rec[object_id]
rec_inf[1].release()
# rec_inf[1].release()
temp_v_list = rec_inf[3]
for v in temp_v_list:
try:
sql = 'INSERT INTO "historical_video_2" ("event_id", "camera_id", "frame_id", "timestamp", "video_url", "violation_type") VALUES (%s, %s, %s, %s, %s, %s);'
# for violated_items in violations:
# present_event_id = 'SELECT "event_id" FROM aarti_violation_event_table'
cur = self.conn.cursor()
# cur.execute("ROLLBACK")
frame_count = self.frame_id
file_path = "/home/administrator/historical_videos/" + str(unique_id) + ".avi"
cur.execute(sql,
[frame_count, 4, str(unique_id), datetime.datetime.now(), file_path,
v])
self.conn.commit()
cur.close()
except:
self.conn.rollback()
self.send_payload(frame=resize_to_64_64(frame), message=temp_v_list,
event=v, frame_id=rec_inf[2])
with open("output/recorded_video_list.txt", "a") as f:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment