jakowenko / double-take

Unified UI and API for processing and training images for facial recognition.
https://hub.docker.com/r/jakowenko/double-take
MIT License
1.22k stars 98 forks source link

[FEAT] Cannot connect multiple instances #134

Open Salvora opened 3 years ago

Salvora commented 3 years ago

Describe the bug I wanted to add another detector to the DT but when I add it, it loses all the connection of deepstack detectors.

config: This is currently working.

detectors:
  deepstack:
    url: http://192.168.1.41:9776
    key: "sdg34341222fdSAS6"
    # number of seconds before the request times out and is aborted
    timeout: 30

But if I add another detector:

detectors:
  deepstack:
    url: http://192.168.1.41:9776
    key: "sdg34341222fdSAS6"
    # number of seconds before the request times out and is aborted
    timeout: 30

  deepstack_gs60:
    url: http://192.168.1.72:9540
    key: "sdg34341222fdSAS6"
    # number of seconds before the request times out and is aborted
    timeout: 30

Both of them go down. Does it not support multiple detectors of the same type? Version of Double Take 1.5.0

Expected behavior It should connect at least one of them with no problem since I know that one of them definetely works.

Screenshots If applicable, add screenshots to help explain your problem.

Hardware

Additional context I see the below in the logs.

21-10-19 18:42:46 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:42:54 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:42:57 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:43:18 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:43:48 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:44:18 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:44:48 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:45:19 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:45:49 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:46:19 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:46:49 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:47:20 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:47:50 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:47:51 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:48:20 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:48:22 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:48:38 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:48:50 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:49:08 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:49:20 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:49:39 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
21-10-19 18:49:51 error: TypeError: Cannot read property 'recognize' of undefined
    at Object.module.exports.recognize (/double-take/api/src/util/detectors/actions/index.js:3:72)
    at module.exports.test (/double-take/api/src/controllers/recognize.controller.js:30:10)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at module.exports.jwt (/double-take/api/src/middlewares/index.js:19:5)
    at newFn (/double-take/api/node_modules/express-async-errors/index.js:16:20)
    at Layer.handle [as handle_request] (/double-take/api/node_modules/express/lib/router/layer.js:95:5)
    at next (/double-take/api/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/double-take/api/node_modules/express/lib/router/route.js:112:3)
jakowenko commented 3 years ago

Hey @Salvora,

Thanks for checking out the project. The current config doesn't support multiple of the same detector, it's explicitly looking for deepstack, compreface, or facebox.

I can work on a new build to include this though. How does Double Take know which DeepStack URL to use though when processing images for recognition?

Most likely it would need to be configured like this.

detectors:
  deepstack:
    - url: http://192.168.1.41:9776
      key: "sdg34341222fdSAS6"
      # number of seconds before the request times out and is aborted
      timeout: 30
    - url: http://192.168.1.72:9540
      key: "sdg34341222fdSAS6"
      # number of seconds before the request times out and is aborted
      timeout: 30
Salvora commented 3 years ago

Hey @jakowenko, Thanks for the help. I use Home Assistant and have a spare laptop as well as a Synology. If the laptop is on, Home Assistant selects the laptop for image processing since it is much faster, if not it will use Synology. That way is very efficient for me. If you can add a "name" key to the config for identifying the detector, it would be much appreciated.

detectors:
  deepstack:
    - url: http://192.168.1.41:9776
      key: "sdg34341222fdSAS6"
      # number of seconds before the request times out and is aborted
      timeout: 30
      name: DS1
    - url: http://192.168.1.72:9540
      key: "sdg34341222fdSAS6"
      # number of seconds before the request times out and is aborted
      timeout: 30
      name: DS2
jakowenko commented 3 years ago

I can add a name key, would you like that displayed on the UI next the the detector name?

If I'm understanding, the API will try to process an image for DS1, if that fails or if the computer is offline it will go to DS2. Is that correct?

Salvora commented 3 years ago

I can add a name key, would you like that displayed on the UI next the the detector name?

If I'm understanding, the API will try to process an image for DS1, if that fails or if the computer is offline it will go to DS2. Is that correct?

Yeah, it is similar. Seeing it on the UI also makes it very easy to see the statuses. In addition to that, training becomes easier. Since I have to change the config and train them individually etc.

jakowenko commented 3 years ago
Screen Shot 2021-10-20 at 1 14 50 AM

Is this what you had in mind? Here you can see I have two instances of DeepStack configured with names to distinguish them. When recognition happens it will try in the order of the configured URLs. If the first URL resolves with a 200 then that response will be used, if it fails, then the next URL will be hit, and so on.

How did you want the training to work. I assume if you are running two instances you'd want each one to be trained when you use the training page on the UI.

Salvora commented 3 years ago

Yeah, that looks great. Instead of using a fail-over like that why not make it like the default behaviour while using multiple detectors? According to that SS, when recognition happens, what happens with frigate, compreface will happen with these two seperate deepstack instances.

As for training, yes they have to be trained separately to work.

wonkydog commented 2 years ago

Hi David,

Great project and a very interesting use case that's mentioned here.

I really don't want to take away from the OP or what they are trying to achieve but would multiple instances in this sense help with 'Still processing previous request' log messages.

To give some further detail, I have multiple raspberry pi 4 running deepstack and I would like to configure two or more detectors for face recognition. Ideally I would like to train all instances symmetrically but when processing, share or distribute the load.

Hopefully reducing the 'Still processing' messages.

Thanks all, and David really enjoying the work so far. A few months ago my cameras were very dumb but given Frigate and now Double Take I'm now getting some great detail. Double Take is a very interesting project and I'm really excited to see where it goes!

WD