Signed-off-by: Mingyu Yin <mingyu.yin@intel.com> Reviewed-by: Guo, Yejun <yejun.guo@intel.com>tags/n4.4
@@ -138,6 +138,10 @@ int dnn_execute_layer_math_unary(DnnOperand *operands, const int32_t *input_oper | |||||
for (int i = 0; i < dims_count; ++i) | for (int i = 0; i < dims_count; ++i) | ||||
dst[i] = floor(src[i]); | dst[i] = floor(src[i]); | ||||
return 0; | return 0; | ||||
case DMUO_ROUND: | |||||
for (int i = 0; i < dims_count; ++i) | |||||
dst[i] = round(src[i]); | |||||
return 0; | |||||
default: | default: | ||||
return -1; | return -1; | ||||
} | } | ||||
@@ -45,6 +45,7 @@ typedef enum { | |||||
DMUO_ATANH = 12, | DMUO_ATANH = 12, | ||||
DMUO_CEIL = 13, | DMUO_CEIL = 13, | ||||
DMUO_FLOOR = 14, | DMUO_FLOOR = 14, | ||||
DMUO_ROUND = 15, | |||||
DMUO_COUNT | DMUO_COUNT | ||||
} DNNMathUnaryOperation; | } DNNMathUnaryOperation; | ||||
@@ -60,6 +60,8 @@ static float get_expected(float f, DNNMathUnaryOperation op) | |||||
return ceil(f); | return ceil(f); | ||||
case DMUO_FLOOR: | case DMUO_FLOOR: | ||||
return floor(f); | return floor(f); | ||||
case DMUO_ROUND: | |||||
return round(f); | |||||
default: | default: | ||||
av_assert0(!"not supported yet"); | av_assert0(!"not supported yet"); | ||||
return 0.f; | return 0.f; | ||||
@@ -136,5 +138,7 @@ int main(int agrc, char **argv) | |||||
return 1; | return 1; | ||||
if (test(DMUO_FLOOR)) | if (test(DMUO_FLOOR)) | ||||
return 1; | return 1; | ||||
if (test(DMUO_ROUND)) | |||||
return 1; | |||||
return 0; | return 0; | ||||
} | } |
@@ -76,7 +76,7 @@ class TFConverter: | |||||
self.mathbin2code = {'Sub':0, 'Add':1, 'Mul':2, 'RealDiv':3, 'Minimum':4} | self.mathbin2code = {'Sub':0, 'Add':1, 'Mul':2, 'RealDiv':3, 'Minimum':4} | ||||
self.mathun2code = {'Abs':0, 'Sin':1, 'Cos':2, 'Tan':3, 'Asin':4, | self.mathun2code = {'Abs':0, 'Sin':1, 'Cos':2, 'Tan':3, 'Asin':4, | ||||
'Acos':5, 'Atan':6, 'Sinh':7, 'Cosh':8, 'Tanh':9, 'Asinh':10, | 'Acos':5, 'Atan':6, 'Sinh':7, 'Cosh':8, 'Tanh':9, 'Asinh':10, | ||||
'Acosh':11, 'Atanh':12, 'Ceil':13, 'Floor':14} | |||||
'Acosh':11, 'Atanh':12, 'Ceil':13, 'Floor':14, 'Round':15} | |||||
self.mirrorpad_mode = {'CONSTANT':0, 'REFLECT':1, 'SYMMETRIC':2} | self.mirrorpad_mode = {'CONSTANT':0, 'REFLECT':1, 'SYMMETRIC':2} | ||||
self.name_operand_dict = {} | self.name_operand_dict = {} | ||||
@@ -23,4 +23,4 @@ str = 'FFMPEGDNNNATIVE' | |||||
major = 1 | major = 1 | ||||
# increase minor when we don't have to re-convert the model file | # increase minor when we don't have to re-convert the model file | ||||
minor = 20 | |||||
minor = 21 |