-
Notifications
You must be signed in to change notification settings - Fork 9
Description
First of all i'd like to congratulate you on this repository, really interesting work!
So, i was setting up your repo, following your read.me and i encountered some probelms, which i'll post below, in case you consider that my solution to them might be the reason for my client not working properly (and in case it isn't it will also help someone who may faced them aswell)
Issues along the way
So, i'm running everything on a docker container wich is using "cuda:10.1-cudnn7-devel-ubuntu16.04" as the image (ubuntu 16.04 with everything set for GPU usage). The issues were the following:- First, after changing the darknet files and cloning your repo, i ran "make" on the server side and had issues due to the lack of the tbb library
for this i simply installed the library with "apt install gcc libtbb-dev" which solved it.
which was solved by adding "#include <fstream>" to the src/yolo_detector.cpp
- At this point it compiled without problems, but when running the worker it had problems finding/accessing the libdarknet.so

for that i executed "/sbin/ldconfig -v" which worked like a charm.
- Now all sink, ventilator and worker run (sometimes the worker can't find the weights file, but if i run it again that issue disappear, strange behavior). When trying to "make" the client side i got this errors
which i saw you answered here
so i added "CV_" to the begging of those variables (except for CAP_PROP_BUFFERSIZE which for no aparant reason still wouldn't work, so i printed its value on a python script with opencv and replaced that variable with 38 [printed the other ones too to check if the values in c++ where equal to one i got in python])
After that everything was ready for the test run. As you mentioned on your read.me i exectued
sink -> ventilator -> worker -> client
everything up and running, so far so good, but when i run the client, it simply blocks, it does nothing:

I checked via GDB what was happening and it simply blocks at line 195
while (!fetch_flag)

That flag only changes to true in the case of detecting a camera (which in this scneario is never the case) or in the fetch_thread function, which i got say, is beyond me xD. Very rarely, when running the client (don't remeber if it is with that while on comment or not) it works properly and the sink, ventilator start printing a lot of data and the video starts running with the bounding boxs (since it is not deterministic behavior i assume somewhere it creates a race condition which enables it to work sometimes).
Can you please share some light on this, not sure where to look to fix this issue and would like to be able to run this since, has i said in the beginning, i find this project really fascinating
Thanks for your time :)





