Thanks, I will work on incorporating these changes. In my defense it was my first project and I was solely focused on getting the results and didn't focus much on making the code "accessible"
This is a good summary of a large portion of code written in academia. "Didn't know how to program," "wrote it for myself," and "just trying to get a result." I've heard that a billion times. Not such a big deal if it's just for yourself and not shared with the world. Unfortunately in larger academic collaborations these mentalities end up slowing down research more than enabling it. (And if you intend on making your research public, the "collaboration" should be seen as anyone who views your github.)
Academics are great at finding "local optima," but rarely do they see beyond their next result, and then others have the onerous task of trying to verify the previous results or worse still using the previous work to build towards "larger" results.
Nice one! I don't remember all that much from reading the Mask-RCNN paper last year and have not seen many implementations so it's nice to be presented with this Pytorch implementation.
From what I recall about Faster R-CNN, the Regions Of Interest (ROI) are pre-determined via Selective Search, right? So I presume you would need to do the same thing with Mask-RCNN? I think this is the part I am the most confused with since I have never implemented Selective Search myself. Could you point me to introductory material on it?
Lastly, I can see the author of this work has read my blog post on understanding SSD MultiBox - glad it helped in some way :).
Selective search is implemented in Fast-RCNN. Faster-RCNN improves upon that and uses a Region Proposal Me to propose RoI that may contain objects which speed up training and inference time.
yeah dumping it all in a single 2098 line file, why not? Here is a clean documented implementation of faster rcnn for comparison: https://github.com/chenyuntc/simple-faster-rcnn-pytorch