Correct, I really like the api and flexibility of PyTorch(http://pytorch.org/), but opencv3.3 do not support PyTorch(http://pytorch.org/) but pytorch(https://github.com/hughperkins/pytorch), you can study more details in #9501.
I do not like caffe nor tensorflow but I would prefer them if I want to deploy my model, because I can't find a better choice.
Right, opencv dnn is what I use, you can check the source codes(ssd_detector.cpp, less than 90 lines of codes), if there are anything you do not understand, I am willing to to help.
I think performance is quite good, SSDMobileNet can run 70ms per frame on my laptop(Y410P) without using gpu(I link with the opencv compile without cuda support and disable opencl from the beginning, but I build with eigen and tbb support), however, dnn module do eat a lot of cpu power(80~90% cpu usage).
Hope you success, if you want to find someone to cooperate and you think my skills may help you, please do not hesitate to send me a message, I am eager to earn more experiences of computer vision project.