Open tantonj opened 1 day ago
I would like my own software to be able to add a new person to the face recognition path and have viseron retrain the face recognition model without restarting viseron. I'm wondering if this is possible.
Not possible sadly, but there is no technical limitation or anything like that. I simply have not had the time to do it :(
I've also experimented with Compreface, (I still need to do more, but stopped because dlib was working). I was having trouble with it detecting a face. From what I understand it goes off of the faces in the same Viseron path and NOT the faces added to any application created inside Compreface itself. Compreface has the ability to retrain when a new person is added (if I am not mistaken). So is there a way to use the faces inside Compreface instead of the file structure in Viseron?
As long as the persons trained in Compreface is the same as the foldernames in the Viseron config i think it should work.
So if you train a face in Compreface called john
, and create an empty dir called /config/face_recognition/faces/john/
and set train: false
for compreface
it should work.
Can you try that out?
P.S. another option, if you point me in the right direction I can experiment with building Viseron from code and attempt a PR where an endpoint will do exactly this (receive face/name, update files, retrain model).
I would love that! I am always looking for more contributions.
Thanks for the reply,
One last question from what you responded with.
So if you train a face in Compreface called john, and create an empty dir called /config/face_recognition/faces/john/ and set train: false for compreface it should work.
If Viseron is running and there are 3 foldernames in the Viseron config and train is false, we add a new person/image to compreface, and create a new folder in the config to match that person, will Viseron need to restart in order to match that person? (I assume yes based on how binary facial recognition events are populated).
Thanks,
Hello,
I'm using Viseron with dlib and love it so far! Forgive me if I am putting this in the wrong spot as I don't really see it as an "Issue". I just have a question how to do something and this seemed like the best place to do so.
I would like my own software to be able to add a new person to the face recognition path and have viseron retrain the face recognition model without restarting viseron. I'm wondering if this is possible.
I know I can change the face recognition path to anywhere I want so I can easily write any files I want in there. (Though my preference would be to do this remotely through a viseron endpoint so that Viseron can sit on it's own server without any middleware on it). But once doing so, Viseron appears to need to restart in order to retrain the model and be able to detect the new face.
I've also experimented with Compreface, (I still need to do more, but stopped because dlib was working). I was having trouble with it detecting a face. From what I understand it goes off of the faces in the same Viseron path and NOT the faces added to any application created inside Compreface itself. Compreface has the ability to retrain when a new person is added (if I am not mistaken). So is there a way to use the faces inside Compreface instead of the file structure in Viseron?
I appreciate any response even if it is that Viseron can and will not do any of these things. Worst case scenario I can create a small api server to receive an image and write it appropriately and use the websocket to restart Viseron when a new person is added. This of coarse means viseron will be effectively going down momentarily every time a new person is added to the system.
Thanks,
P.S. another option, if you point me in the right direction I can experiment with building Viseron from code and attempt a PR where an endpoint will do exactly this (receive face/name, update files, retrain model).