refine infer shape in box decoder and assign op, test=develop (#19118)

padding_in_crf
wangguanzhong 6 years ago committed by GitHub
parent 29d8781240
commit 1fc242a7ed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -57,17 +57,19 @@ class BoxDecoderAndAssignOp : public framework::OperatorWithKernel {
"The rank of Input of TargetBox must be 2"); "The rank of Input of TargetBox must be 2");
PADDLE_ENFORCE_EQ(box_score_dims.size(), 2, PADDLE_ENFORCE_EQ(box_score_dims.size(), 2,
"The rank of Input of BoxScore must be 2"); "The rank of Input of BoxScore must be 2");
if (ctx->IsRuntime()) {
PADDLE_ENFORCE_EQ(prior_box_dims[0], target_box_dims[0], PADDLE_ENFORCE_EQ(prior_box_dims[0], target_box_dims[0],
"The first dim of prior_box and target_box is roi nums " "The first dim of prior_box and target_box is roi nums "
"and should be same!"); "and should be same!");
PADDLE_ENFORCE_EQ(prior_box_dims[0], box_score_dims[0], PADDLE_ENFORCE_EQ(prior_box_dims[0], box_score_dims[0],
"The first dim of prior_box and box_score is roi nums " "The first dim of prior_box and box_score is roi nums "
"and should be same!"); "and should be same!");
PADDLE_ENFORCE_EQ(target_box_dims[1], box_score_dims[1] * prior_box_dims[1], PADDLE_ENFORCE_EQ(
target_box_dims[1], box_score_dims[1] * prior_box_dims[1],
"The shape of target_box is [N, classnum * 4], The shape " "The shape of target_box is [N, classnum * 4], The shape "
"of box_score is [N, classnum], The shape of prior_box " "of box_score is [N, classnum], The shape of prior_box "
"is [N, 4]"); "is [N, 4]");
}
ctx->SetOutputDim("DecodeBox", framework::make_ddim({target_box_dims[0], ctx->SetOutputDim("DecodeBox", framework::make_ddim({target_box_dims[0],
target_box_dims[1]})); target_box_dims[1]}));
ctx->ShareLoD("TargetBox", /*->*/ "DecodeBox"); ctx->ShareLoD("TargetBox", /*->*/ "DecodeBox");

Loading…
Cancel
Save