OpenCV 3.4.0 with new samples/dnn/object_detection?
Hi, I'm trying to get OpenCV to work with Darknet YOLO V3. I was told that Darknet doesn't support OpenCV 3.4.1, and I need to use 3.4.0. However, it looks like a fix for YOLO V3 in DNN layers was just very recently pushed to the samples/dnn/object_detection* files in branch 3.4. So what I'm wondering is, can I apply this fix easily to version 3.4.0 of OpenCV? Any help is greatly appreciated, thanks!
Also if I'm over-complicating or misunderstanding the issue and there's an easier way to run Yolo V3 config files on video please let me know!
"I was told that Darknet doesn't support OpenCV 3.4.1, and I need to use 3.4.0" -- that's nonsense, and it's the other way roundOpenCV is going to increase a major version (it will be 4.x.x). However that means that a lot of significant changes will come. The same thing was once between OpenCV 2 and OpenCV 3. Then master branch was used to develop a new version of OpenCV but a branch 2.4 to let users work with an old one. Nowadays master branch is a future OpenCV 4 and all the 3.x.x versions will be at branch 3.4. Once a week master branch merges some changes from 3.4.x so you can use both (just wait a moment when master branch will be updated).
I had problems compiling with 3.4.1 and then found this post: https://github.com/pjreddie/darknet/i... Maybe I was doing something wrong, is that bug outdated and master branch should compile now?
apologies, i misread it:
please clarify again, which of the 2 different things you wanted to do, it's unclear in your question
Is it possible to do both, darknet with opencv support along with pretrained yolo v3 network? I have a video that I want to run real-time detections on that I believe requires opencv support, but the pretrained network uses yolov3 layers.
not with the same opencv version
hmm so just to make sure that I follow, there's no way to run detection on videos in real-time with pretrained yolov3 network currently?
you don't have to build the darknet lib with opencv, that's where the problem is.
you can build it without any (internal, c-api) opencv support, and do your own c++ visualization in your main program. that would work with latest opencv master, too.
Ah, okay. Thanks for your help in understanding. Maybe I got confused because the darknet website shows the example command ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights <video file="">, which I think requires building with opencv, but also needs DNN module support for V3? Maybe I'm mistaken again though.
darknet does not need or use opencv's dnn (it has it's own)