main.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /**
  2. * 计算两个点之间的距离是否在5以内 用于判定两个点是否重合
  3. * @param {Object} point1
  4. * @param {Object} point2
  5. */
  6. export function pointsDiff(point1, point2) {
  7. let diffX = Math.abs(point1.x - point2.x);
  8. let diffY = Math.abs(point1.y - point2.y);
  9. return Math.sqrt(diffX * diffX + diffY * diffY) <= 6;
  10. }
  11. //
  12. /**
  13. * 行为类算法
  14. * @disabled 暂不支持
  15. */
  16. export const algorithmDic = {
  17. faceModel: {
  18. face: { label: "人脸识别" },
  19. // face_att_teacher: { label: "教师考勤" },
  20. // face_att_student_enter: { label: "学生出勤-进" },
  21. // face_att_student_exit: { label: "学生出勤-出" }
  22. },
  23. otherModel: {
  24. helmet: { label: "未戴安全帽" },
  25. smokingdetection: { label: "吸烟告警", disabled: true },
  26. fumesdetection: { label: "烟雾监测", disabled: true },
  27. fire: { label: "明火告警" },
  28. invade: { label: "区域入侵" },
  29. fall: { label: "跌倒检测" },
  30. fight: { label: "打架斗殴" },
  31. vest: { label: "反光衣/带检测" }
  32. }
  33. }
  34. /**
  35. * 摄像头默认data
  36. * @rules 算法下发参数
  37. * @id 区域id(0-3)
  38. * @event 行为类/人脸
  39. * @points 点位坐标
  40. */
  41. export const channelData = {
  42. ip: "",
  43. user: "",
  44. password: "",
  45. device: "",
  46. channel: null,
  47. broadcast: null
  48. }
  49. export const fullScreenPoints = [{ x: 0, y: 0 }, { x: 0, y: 1440 }, { x: 2560, y: 1440 }, { x: 2560, y: 0 }]