ScopeDecodeBboxPass
Description
Fuses a scope containing the following operators into a DecodeBbox operator: a multiple of three tf.Reshape operators, a multiple of two tf.Split operators, tf.Minimum operators, a multiple of three tf.Add operators, tf. ConcatV2 operators, and a multiple of two tf.Sub operators. The Greater, Squeeze, Gather_2, TopKV2, and boolean_mask operators are excluded.
Scope Details
There are two types of scopes based on whether the transpose operator is included.
The transpose operator not included:

The transpose operator included:

Fusion Mapping
- If the transpose operator is not included:
The input of Reshape is used as the input box_predictions after fusion.
The inputs of Shape and Reshape_1 are used as the input anchors after fusion.
The output of Reshape_2 is used as the output decoded_boxes after fusion.
The output of Reshape is used as the input of Split.
The output of Split is used as the inputs of Minimum and Mul.
The output of Minimum is used as the input of Exp.
The output of Exp is used as the input of mul.
The output of Reshape_1 is used as the input of split_1.
The output of split_1 is used as the inputs of Sub and Add.
The outputs of Sub and Add are used as the input of Mul.
The output of Mul is used as the inputs of Add_1, Sub_1, and Add_2.
The output of Add_1 is used as the inputs of Sub_1 and Add_2.
The outputs of Sub_1 and Add_2 are used as the input of concat.
The outputs of Shape and concat are used as the input of Reshape_2.
Operators such as Greater, Squeeze, Gather_2, TopKV2, and boolean_mask are excluded.
- If the transpose operator is included:
The input of transpose is used as the input box_predictions after fusion.
The input of transpose_1 is used as the input anchors after fusion.
The output of transpose_2 is used the output decoded_boxes after fusion.
The output of transpose is used as the input of Reshape.
The output of Reshape is used as the input of Split.
The output of Split is used as the inputs of Minimum and Mul.
The output of Minimum is used as the input of Exp.
The output of Exp is used as the input of mul.
The output of transpose_1 is used as the inputs of Reshape_1 and Shape.
The output of Reshape_1 is used as the input of split_1.
The output of split_1 is used as the inputs of Sub and Add.
The outputs of Sub and Add are used as the input of Mul.
The output of Mul is used as the inputs of Add_1, Sub_1, and Add_2.
The output of Add_1 is used as the inputs of Sub_1 and Add_2.
The outputs of Sub_1 and Add_2 are used as the input of concat.
The outputs of Shape and concat are used as the input of Reshape_2.
The output of Reshape_2 is used as the input of transpose_2.
Applicable Network
2D-H1
Fusion Pattern Type
Non-general fusion pattern