Closed PureHing closed 3 years ago
did you free the output of maxpool layer?
As shown above, one(lm_0) of the maxpool layers is in l2_concat, I released l2_concat layer. and lm_1 & lm_2 & lm_3 is also maxpooling layer.
int8_t *score = model.out_layer.get_output().get_element_ptr();
@PureHing, I can not find the out_layer in the call() function.
@yehangyang sorry ,out_layer is l12
@PureHing, the error happens in MaxPool2D's deconstruction. We'll check the source code. Is the score result right?
@yehangyang The model is a regression network, now I can’t parse the score result data. It interrupt here
result[i]=score[i]*pow(2.f,-3);
@PureHing, I saw your log printed 'success'.
printf("%f,",result[i]); // It didn't work?
How about replace with score[i]*0.125
?
@yehangyang
How about replace with
score[i]*0.125
?
the same as pow
0x420079ca: app_main at /home/librazxc/SoftwareDevelop/esp/dl_dm_detection_esp32s3/build/../main/app_main.cpp:127 @PureHing, What is line 127?
@yehangyang
dbox boxes = (dbox )calloc(box * (1 + 4), sizeof(dbox));
float result = (float )malloc(size_out);
@PureHing should be
float *result = (float *)malloc(size_out*sizeof(float));
@yehangyang Oh, it's very awkward.
(inlined by) DMMODEL::~DMMODEL() at /home/librazxc/SoftwareDevelop/esp/dl_dm_detection_esp32s3/build/../model/dm_model.hpp:21 @PureHing What is this?
@PureHing , What your DMMODEL::~DMMODEL()
?
@yehangyang Call the parent Model
class destructor, I did not define.
dm_model.hpp
structure modified from mnist_model.hpp
@PureHing, is l12
declared in public?
Please help me to locate which layer's deconstructor cause this error.
By adding printf("%s\n",this->name);
in each layer's deconstructor. For example Conv2D, add print() here
yes.
adding printf("%s\n",this->name)
,output :
l12 l11 l10 l9 l8 l7 l6 l5 l4 l3 l2 l1 l0
it seems no problem,i will check it later.
@yehangyang Thanks so much.
@Auroragan @yehangyang
I'm sorry to bother you.
simple main code:
What is the cause of this problem? Log: