Open alex96295 opened 4 years ago
@LatticeSemi actually there were some labels that gave exactly 0 while calculating the bounding boxes, because - I don't know why - they had xmin = xmax and ymin = ymax Therefore I changed the assertion error condition from '> 0' to '>=0', and the result is that now all boundig boxes are processed correctly, but the model diverges; maybe it's related to the modification I have done, since the original code had '>0'
Didn't you come across these issues?
@LatticeSemi @kishan-sib did you have a look? I filtered out the boxes which led to that assertion to rise in the annotation set, but the model diverges at the second step, and I had not touched the original code.
Therefore, probably those boxes were not the problem, yet now I don't know what to change; if it is the code you used to do training, I guess it should work
@alex96295
"It is weird to me since I have used the exact dataset images + annotations in the folder of the reference design for mobilenetv2 + squeezedet that was on the website."
Can you point us to this dataset you are using.
@kishan-sib I am using the 'HCNT_Dataset.zip' folder you can find inside the downloadable file: 'Object Counting using Mobilenet CNN Accelerator IP - Project Files' in the webpage of Object Counting reference designs: http://www.latticesemi.com/products/designsoftwareandip/intellectualproperty/referencedesigns/referencedesign03/objectcounting Is this the correct dataset to use with the anchor's shape you provide in the code? Since their width and height change with the dataset you use;
PS The dataset is given in the folder dedicated to Mobilenet demo, although I am using the one with MobilenetV2 (most recent), yet I think it should be fine as well.
Basically, the issues I have met - provided I'm not doing some errors, which could also be the case, even if I have not touched anything from the core code - are:
First, with that very same dataset, an assertion rose in the imdb.py file telling that there were some annotations with bounding box coordinates xmin = xmax and ymin = ymax, which is not correct. So I filtered out those annotations and the issue was solved, yet it sounds weird to me since I expected that dataset to be the very same you used for successful training;
Second, even if now the images + annotations are correctly read and manipulated, it blocks at the second iteration, as you can see in the error logs, because the class loss becomes NaN:
I'd like to ask you if you are meeting the same error when using the code from this repo and that dataset
@kishan-sib @LatticeSemi any news about it? Could you please suggest me a possible reason for the 'nan' I get in the class_loss according to you? Could it be a problem of the dataset (i.e., the dataset I pointed you out is the correct one associated with the repository code) or of the code itself?
Or maybe have a try yourself, so you can tell me if also you get the same thing as me
Hi, I am getting the error in the title while running the training. This error is in the imdb.py file, line 170-173 (load annotations), i.e. in the dataset preparation. It is weird to me since I have used the exact dataset images + annotations in the folder of the reference design for mobilenetv2 + squeezedet that was on the website.
I think that on this line of code it is conveting boxes from xmin, ymin, xmax, ymax to xc, yc, w, h and gets something negative in the process.
Do you have any suggestions? As far as I know, I didn't change anything, and just wanted to see if the training worked
[Edit] I put the error logs screenshot here:
It blocks every time at the same place, I think after the first minibatch (guess), so I don't actually know what's happening
Thanks!