{
	"executor": {
		"executorType": "sequentialExecutor",
		"sequence": [ "start", "checkRuntimeMem", "inputToCVMat", "cvtColor", "resize", "padding", "NormalizeByChannel", "CVMatToTensor", "infer", "TensorToCVMat", "ocrBoxDetectPost", "final" ],
		"dataStream": {
			"checkRuntimeMem": {
				"input": [ "srcImage" ]
			},
			"inputToCVMat": {
				"input": [ "srcImage" ],
				"output": [ "InputToCVMatOutput" ]
			},
			"cvtColor": {
				"input": [ "InputToCVMatOutput" ],
				"output": [ "cvtColorOutput" ]
			},
			"resize": {
				"input": [ "cvtColorOutput" ],
				"output": [ "resizeOutput" ]
			},
			"padding": {
				"input": [ "resizeOutput" ],
				"output": [ "paddingOutput" ]
			},
			"NormalizeByChannel": {
				"input": [ "paddingOutput" ],
				"output": [ "convertToOutput" ]
			},
			"CVMatToTensor": {
				"input": [ "convertToOutput" ],
				"output": [ "CVMatToTensorOutput" ]
			},
			"infer": {
				"input": [ "CVMatToTensorOutput" ],
				"output": [ "inferOutput" ]
			},
			"TensorToCVMat": {
				"input": [ "inferOutput" ],
				"output": [ "TensorToCVMatOutput" ]
			},
			"ocrBoxDetectPost": {
				"input": [ "TensorToCVMatOutput", "srcImage" ],
				"output": [ "output" ]
			}
		}
	},
	"node": {
		"start": {
			"nodeType": "StartNode"
		},
		"checkRuntimeMem": {
			"nodeType": "CheckRuntimeMemNode",
			"imageMemThreshold": {
				"1000000": [ 474, 100 ],
				"2250000": [ 474, 100 ],
				"4000000": [ 474, 100 ],
				"6250000": [ 487, 100 ],
				"9000000": [ 516, 100 ],
				"12250000": [ 551, 141 ],
				"16000000": [ 572, 162 ],
				"20250000": [ 612, 202 ],
				"25000000": [ 628, 218 ],
				"30250000": [ 672, 262 ],
				"36000000": [ 720, 310 ]
			}
		},
		"inputToCVMat": {
			"nodeType": "InputToCVMatNode",
			"releaseInputData": true
		},
		"cvtColor": {
			"nodeType": "CvtColorNode",
			"code": "RGB"
		},
		"resize": {
			"nodeType": "ResizeNode",
			"width": 960,
			"height": 960,
			"equalProportion": true
		},
		"padding": {
			"nodeType": "PaddingNode",
			"width": 960,
			"height": 960,
			"borderType": 0,
			"makeBorderType": 1,
			"scalarArray": [ 255, 255, 255, 0 ]
		},
		"NormalizeByChannel": {
			"nodeType": "NormalizeByChannelNode",
			"rtype": 5,
			"scale": [ 0.48109378172549, 0.45752457890196, 0.40787054090196 ],
			"bias": [ 0.229, 0.224, 0.225 ]
		},
		"CVMatToTensor": {
			"nodeType": "CVMatToTensorNode",
			"elemsize": 4,
			"name": "serving_default_x:0",
			"layout": [ "n", "h", "w", "c" ]
		},
		"infer": {
			"nodeType": "InferenceNode",
			"backendType": 0,
			"precision": 0,
			"modelFileNames": [ "textbox_detect_v1.tflite" ]
		},
		"TensorToCVMat": {
			"nodeType": "TensorToCVMatNode",
			"tensorIndex": 0,
			"widthIndex": 1,
			"heightIndex": 2,
			"channelIndex": 3
		},
		"ocrBoxDetectPost": {
			"nodeType": "OCRBoxDetectPostNode"

		},
		"final": {
			"nodeType": "FinalNode",
			"release": ["srcImage"]
		}
	}
}