Browse Source

[修改]下发配置文件更改

develop
邵佳豪 2 years ago
parent
commit
b27a03f655
  1. 4
      proxy.config.json
  2. 160
      src/app/system-management/host-config/host-config.component.ts
  3. 85
      src/app/system-management/organization/organization.component.ts

4
proxy.config.json

@ -1,11 +1,11 @@
{
"/api": {
"target": "http://121.36.37.70:8080",
"target": "http://10.156.134.54:8080",
"secure": false,
"changeOrigin": true
},
"/signalr": {
"target": "http://121.36.37.70:8080",
"target": "http://10.156.134.54:8080",
"secure": false,
"ws": true,
"logLevel": "debug"

160
src/app/system-management/host-config/host-config.component.ts

@ -289,12 +289,12 @@ export class HostConfigComponent implements OnInit {
return item.isEnabled;
})
let config4 = `video_rate: 5
inference_buffer_second: 6
inference_buffer_second: 10
sources:`
copyListOfData.forEach((item: any, index) => {
if (item.type == 3 && item.dimensionedPointsObj && item.dimensionedPointsObj.arrow.length != 0) {
let arrowArr = item.dimensionedPointsObj.arrow
let str = arrowArr[1].startX + ';' + arrowArr[1].startY + ';' + arrowArr[1].endX + ';' + arrowArr[1].endY + ';' + arrowArr[0].startX + ';' + arrowArr[0].startY + ';' + arrowArr[0].endX + ';' + arrowArr[0].endY
let str = arrowArr[1].startX + ',' + arrowArr[1].startY + ',' + arrowArr[1].endX + ',' + arrowArr[1].endY + ',' + arrowArr[0].startX + ',' + arrowArr[0].startY + ',' + arrowArr[0].endX + ',' + arrowArr[0].endY
config4 += `
- name: '${item.name}'
user: '${item.user}'
@ -305,7 +305,7 @@ sources:`
`
} else if (item.type == 2 && item.dimensionedPointsObj && item.dimensionedPointsObj.arrow.length != 0 && item.dimensionedPointsObj.arrowOfWest && item.dimensionedPointsObj.arrowOfWest.length == 0) {
let arrowArr = item.dimensionedPointsObj.arrow
let str = arrowArr[1].startX + ';' + arrowArr[1].startY + ';' + arrowArr[1].endX + ';' + arrowArr[1].endY + ';' + arrowArr[0].startX + ';' + arrowArr[0].startY + ';' + arrowArr[0].endX + ';' + arrowArr[0].endY
let str = arrowArr[1].startX + ',' + arrowArr[1].startY + ',' + arrowArr[1].endX + ',' + arrowArr[1].endY + ',' + arrowArr[0].startX + ',' + arrowArr[0].startY + ',' + arrowArr[0].endX + ',' + arrowArr[0].endY
config4 += `
- name: '${item.name}'
user: '${item.user}'
@ -316,10 +316,10 @@ sources:`
`
} else if (item.type == 2 && item.dimensionedPointsObj && item.dimensionedPointsObj.arrow.length != 0 && item.dimensionedPointsObj.arrowOfWest && item.dimensionedPointsObj.arrowOfWest.length != 0) {
let arrowArr = item.dimensionedPointsObj.arrow
let str = arrowArr[1].startX + ';' + arrowArr[1].startY + ';' + arrowArr[1].endX + ';' + arrowArr[1].endY + ';' + arrowArr[0].startX + ';' + arrowArr[0].startY + ';' + arrowArr[0].endX + ';' + arrowArr[0].endY
let str = arrowArr[1].startX + ',' + arrowArr[1].startY + ',' + arrowArr[1].endX + ',' + arrowArr[1].endY + ',' + arrowArr[0].startX + ',' + arrowArr[0].startY + ',' + arrowArr[0].endX + ',' + arrowArr[0].endY
let arrowArr2 = item.dimensionedPointsObj.arrowOfWest
let str2 = arrowArr2[1].startX + ';' + arrowArr2[1].startY + ';' + arrowArr2[1].endX + ';' + arrowArr2[1].endY + ';' + arrowArr2[0].startX + ';' + arrowArr2[0].startY + ';' + arrowArr2[0].endX + ';' + arrowArr2[0].endY
let str3 = '[' + str + ']' + ',' + '[' + str2 + ']'
let str2 = arrowArr2[1].startX + ',' + arrowArr2[1].startY + ',' + arrowArr2[1].endX + ',' + arrowArr2[1].endY + ',' + arrowArr2[0].startX + ',' + arrowArr2[0].startY + ',' + arrowArr2[0].endX + ',' + arrowArr2[0].endY
let str3 = '[' + str + ',' + str2 + ']'
config4 += `
- name: '${item.name}'
user: '${item.user}'
@ -552,16 +552,9 @@ ${newstr}class-id=0
console.log('泄油管区域', xieyouguan)
console.log('静电接地', jingdian)
config2 = `# The all in one config file.
# RTSP sources
# type
# 0 ViolateArea.ENTRANCE,
# 1 ViolateArea.GAS_AREA,
# 2 ViolateArea.FUEL_AREA,
# 3 ViolateArea.MART,
# don't change the key name.
debug: false #when the debug is on, osd.
video_record: 3 #time to record into the .ts video
video_record: 15 #time to record into the .ts video
sources:
config: 'config/source.yaml'
@ -572,6 +565,9 @@ tracker:
analytics:
config: 'config/config_nvdsanalytics.txt'
## ##
# 1:人物检测
peoplenet:
enable: true
apply_on: -1
@ -583,8 +579,9 @@ peoplenet:
detected-min-w: 20
detected-min-h: 200
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/peoplenet/weights/resnet34_peoplenet_int8.etlt_b16_gpu0_int8.engine'
threshold: 0.8
threshold: 0.3
# 2:车辆检测
trafficcam:
enable: true
apply_on: 0
@ -597,6 +594,7 @@ trafficcam:
detected-min-h: 100
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/trafficcam/weights/resnet18_trafficcamnet_pruned.etlt_b16_gpu0_int8.engine'
# 3:人物倚靠行为
actionnet:
enable: false
apply_on: 1
@ -612,6 +610,26 @@ actionnet:
interval: 1
batch_size: 32
# 4:烟火检测
fire_smoke_net:
enable: true
apply_on: -1
interval: 1
batch_size: 16
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/fire_smoke_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp16.engine'
threshold: 0.95
# 5:抽烟打电话检测
smoking_calling_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/smoking_calling_net/weights/resnet50_smoking_calling_net_fp16.etlt_b2_gpu0_fp16.engine'
## ##
# 1:身份判别:便
idnet:
enable: true
apply_on: -1
@ -619,8 +637,9 @@ idnet:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/idnet/weights/resnet50_idnet_fp16.etlt_b2_gpu0_fp16.engine'
# 2:卸油区物体识别:
oilnet:
enable: true
enable: false
apply_on: 2
interval: 1
batch_size: 2
@ -631,21 +650,7 @@ oilnet:
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/oilnet/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp16.engine'
threshold: 0.5
fire_smoke_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/fire_smoke_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp16.engine'
threshold: 0.95
smoking_calling_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/smoking_calling_net/weights/resnet50_smoking_calling_net_fp16.etlt_b2_gpu0_fp16.engine'
# 3:卸油管是否连接判定
connet_oil:
enable: true
apply_on: 2
@ -656,6 +661,7 @@ connet_oil:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/connet_oil/weights/resnet50_connet_oil_fp16.etlt_b2_gpu0_fp16.engine'
# 4:静电接地仪器是否连接判定
connet_grounder:
enable: true
apply_on: 2
@ -666,28 +672,36 @@ connet_grounder:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/connet_grounder/weights/resnet50_connet_grounder_fp16.etlt_b2_gpu0_fp16.engine'
#new field for rule threshold
# 5:散装桶加油
bulk_oil_net:
enable: true
apply_on: 2
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/bulk_oil_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp16.engine'
threshold: 0.3
#
rule_threshold:
object_occurence_interval_second: 3
object_disappear_interval_second: 10
on_car_parking_interval_second: 1800
on_fire_smoke_interval_second: 5
on_helmet_interval_second: 5
threshold_relying_sitting: 0.4 #rolling mean confidence
threshold_smoking_calling: 0.3 #rolling mean confidence
threshold_connecting: 0.667 #rolling mean confidence
threshold_identity: 0.5 #only to filter out people net error
threshold_identity: 0.1 #only to filter out people net error
threshold_helmet: 0 #num of helmet detected on a person
enable_seconday_model: False # secondary model ()
threshold_secondary_model: 0.5
secondary_model_window: 50
secondary_model_path: '/opt/app/xgboost'
`
config3 = `# The all in one config file.
# RTSP sources
# type
# 0 ViolateArea.ENTRANCE,
# 1 ViolateArea.GAS_AREA,
# 2 ViolateArea.FUEL_AREA,
# 3 ViolateArea.MART,
# don't change the key name.
debug: false #when the debug is on, osd.
video_record: 3 #time to record into the .ts video
video_record: 15 #time to record into the .ts video
sources:
config: 'config/source.yaml'
@ -698,6 +712,9 @@ tracker:
analytics:
config: 'config/config_nvdsanalytics.txt'
## ##
# 1:人物检测
peoplenet:
enable: true
apply_on: -1
@ -711,6 +728,7 @@ peoplenet:
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/peoplenet/weights/resnet34_peoplenet_int8.etlt_b16_gpu0_int8.engine'
threshold: 0.8
# 2:车辆检测
trafficcam:
enable: true
apply_on: 0
@ -723,6 +741,7 @@ trafficcam:
detected-min-h: 100
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/trafficcam/weights/resnet18_trafficcamnet_pruned.etlt_b16_gpu0_int8.engine'
# 3:人物倚靠行为
actionnet:
enable: false
apply_on: 1
@ -738,6 +757,26 @@ actionnet:
interval: 1
batch_size: 32
# 4:烟火检测
fire_smoke_net:
enable: true
apply_on: -1
interval: 1
batch_size: 16
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/fire_smoke_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp32.engine'
threshold: 0.95
# 5:抽烟打电话检测
smoking_calling_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/smoking_calling_net/weights/resnet50_smoking_calling_net_fp16.etlt_b2_gpu0_fp32.engine'
## ##
# 1:身份判别:便
idnet:
enable: true
apply_on: -1
@ -745,8 +784,9 @@ idnet:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/idnet/weights/resnet50_idnet_fp16.etlt_b2_gpu0_fp32.engine'
# 2:卸油区物体识别:
oilnet:
enable: true
enable: false
apply_on: 2
interval: 1
batch_size: 2
@ -757,21 +797,7 @@ oilnet:
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/oilnet/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp32.engine'
threshold: 0.5
fire_smoke_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/fire_smoke_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp32.engine'
threshold: 0.95
smoking_calling_net:
enable: true
apply_on: -1
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/smoking_calling_net/weights/resnet50_smoking_calling_net_fp16.etlt_b2_gpu0_fp32.engine'
# 3:卸油管是否连接判定
connet_oil:
enable: true
apply_on: 2
@ -782,6 +808,7 @@ connet_oil:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/connet_oil/weights/resnet50_connet_oil_fp16.etlt_b2_gpu0_fp32.engine'
# 4:静电接地仪器是否连接判定
connet_grounder:
enable: true
apply_on: 2
@ -792,16 +819,31 @@ connet_grounder:
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/connet_grounder/weights/resnet50_connet_grounder_fp16.etlt_b2_gpu0_fp32.engine'
#new field for rule threshold
# 5:散装桶加油
bulk_oil_net:
enable: true
apply_on: 2
interval: 1
batch_size: 2
model_engine_file: '/opt/nvidia/deepstream/deepstream-6.0/sources/project/models/bulk_oil_net/weights/yolov4_cspdarknet_tiny_fp16.etlt_b2_gpu0_fp32.engine'
threshold: 0.3
#
rule_threshold:
object_occurence_interval_second: 3
object_disappear_interval_second: 10
on_car_parking_interval_second: 1800
on_fire_smoke_interval_second: 5
on_helmet_interval_second: 5
threshold_relying_sitting: 0.4 #rolling mean confidence
threshold_smoking_calling: 0.3 #rolling mean confidence
threshold_connecting: 0.667 #rolling mean confidence
threshold_identity: 0.5 #only to filter out people net error
threshold_identity: 0.1 #only to filter out people net error
threshold_helmet: 0 #num of helmet detected on a person
enable_seconday_model: False # secondary model ()
threshold_secondary_model: 0.5
secondary_model_window: 50
secondary_model_path: '/opt/app/xgboost'
`
sessionStorage.setItem('config1', config1)

85
src/app/system-management/organization/organization.component.ts

@ -122,7 +122,7 @@ export class OrganizationComponent implements OnInit {
}
editOr(node) {
// console.log(node)
console.log(node)
const modal = this.modal.create({
nzTitle: '编辑组织机构',
nzContent: EditorComponent,
@ -202,7 +202,6 @@ export class OrganizationComponent implements OnInit {
parentId = event.node.origin.parentId
}
}
let body = {
parentId: parentId,
name: event.dragNode.origin.name,
@ -220,97 +219,17 @@ export class OrganizationComponent implements OnInit {
return false
})
// console.log('this.allOrList', this.allOrList)
// let orders = {}
// let originalData = JSON.parse(JSON.stringify(this.allOrList || [])) //tree原始数据
// let targetNodeData = []//拖动移入节点的数据,用于遍历求出放在该数组的第几位
//找到需要重新排序的数组
// if (this.pos == 0) {
// originalData.forEach(item => {
// if (item.parentId == event.node.key) {
// targetNodeData.push(item)
// }
// })
// } else {
// if (event.node.origin.parentId) {//如果拖动目标为非一级节点
// originalData.forEach(item => {
// if (item.parentId == event.node.origin.parentId) {
// targetNodeData.push(item)
// }
// })
// } else {//如果拖动目标为一级节点
// originalData.forEach(item => {
// if (!item.parentId) {
// targetNodeData.push(item)
// }
// })
// }
// }
// let idArr = []
// targetNodeData.forEach(i => {
// idArr.push(i.id)
// })
// if (this.pos == 0 && event.node.origin.children.length == 1) {
// // console.log("移入,没有兄弟")
// let key = event.dragNode.key
// orders[key] = 0
// parentId = event.node.key
// } else {
// let array = []
// targetNodeData.forEach(item => {
// if (item.id != event.dragNode.key) { //将拖动项先移除掉
// array.push(item)
// }
// })
// if (event.dragNode.isEnd[event.dragNode.isEnd.length - 1]) { //如果移入到最后一个
// // console.log("最后")
// array.push(event.dragNode.origin)
// } else if (event.dragNode.isStart[event.dragNode.isStart.length - 1]) {//如果移入到第一个
// // console.log("第一")
// array.unshift(event.dragNode.origin)
// } else {//如果移入中间位置
// // console.log("中间")
// array.splice(event.node.origin.order, 0, event.dragNode.origin)
// }
// array.forEach((item, key) => {
// orders[item.id] = key
// })
// console.log("移入,多个兄弟",orders)
// }
// let obj = {
// id: event.dragNode.origin.id,
// parentId: parentId,
// orders: orders
// }
// this.http.put("/api/DisposalNodes/Sort", obj).subscribe(data => {
// const config = new MatSnackBarConfig();
// config.verticalPosition = 'top';
// config.duration = 3000
// this.snackBar.open('排序成功', '确定', config)
// this.refurbishTreeData()
// })
}
}
isDrag //是否可以拖动
pos//放置位置
beforeDrop = (arg: NzFormatBeforeDropEvent) => {
console.log('arg', arg)
if (arg.node.level === 0) {//如果为数据节点则不允许拖到一级节点
if (arg.pos != 0 && arg.node.level === 0) {//如果为数据节点则不允许拖到一级节点
this.message.create('warning', '不允许拖拽到一级节点');
this.isDrag = false
return of(false);
} else {
this.isDrag = true
this.pos = arg.pos
return of(true)
}
}

Loading…
Cancel
Save