{"id":18873926,"url":"https://github.com/loganmc10/tf2-obj-detect-app","last_synced_at":"2025-10-30T00:11:17.641Z","repository":{"id":155155549,"uuid":"281764524","full_name":"loganmc10/tf2-obj-detect-app","owner":"loganmc10","description":null,"archived":false,"fork":false,"pushed_at":"2020-10-09T19:37:51.000Z","size":113,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-31T00:42:54.766Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/loganmc10.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-22T19:22:11.000Z","updated_at":"2020-10-09T19:37:54.000Z","dependencies_parsed_at":"2023-09-10T18:30:53.958Z","dependency_job_id":null,"html_url":"https://github.com/loganmc10/tf2-obj-detect-app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loganmc10%2Ftf2-obj-detect-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loganmc10%2Ftf2-obj-detect-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loganmc10%2Ftf2-obj-detect-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loganmc10%2Ftf2-obj-detect-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/loganmc10","download_url":"https://codeload.github.com/loganmc10/tf2-obj-detect-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239825015,"owners_count":19703199,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T05:36:19.795Z","updated_at":"2025-10-30T00:11:12.611Z","avatar_url":"https://github.com/loganmc10.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tf2-obj-detect-app\n\n```\nusage: tf_app.py [-h] [-b BLOB] [-i INPUT] [-r] [-s IMAGESET] [-f FREQ] [-t THRESHOLD]\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -b BLOB, --blob BLOB  blob type (s3 or azure). Defaults to s3\n  -i INPUT, --input INPUT\n                        path to video feed. Format: \"http://feedone,feed1_name http://feedtwo,feed2_name\"\n  -r, --rt              enable TensorRT\n  -s IMAGESET, --imageset IMAGESET\n                        Imageset to use (coco or oid). Defaults to coco\n  -f FREQ, --freq FREQ  Analysis frequency in seconds. Defaults to 10\n  -t THRESHOLD, --threshold THRESHOLD\n                        detection threshold. Defaults to 0.40\n```\n\n## Workflow\n1. OpenCV captures a video feed (a webcam for example)\n2. Image is passed to Tensorflow for object detection analysis (by default this happens every 10 seconds)\n3. Tensorflow determines what objects are present in the image\n4. If objects are present, the image is uploaded to Amazon S3 (images retained for 35 days)\n5. Object labels and image URL are sent via MQTT to a broker, message is collected by Node-RED, which forwards the data to InfluxDB\n6. Grafana graphs the labels, attaching the image URL to each data point as metadata\n\n## Final result\n* Object labels graphed in time series\n\n![115850073_598299394457821_2554421986432986060_o](https://user-images.githubusercontent.com/848146/88460651-eefa9700-ce5a-11ea-91fb-44f07e8439a8.png)\n* Image URL metadata attached to each data point\n\n![115865554_598299621124465_7487020321069107523_n](https://user-images.githubusercontent.com/848146/88460650-eefa9700-ce5a-11ea-9daa-e71417d0b854.png)\n* Image with Tensorflow object detection overlay can be display via the graph link\n\n![115960383_598299894457771_2460616232917877997_o](https://user-images.githubusercontent.com/848146/88460648-ebffa680-ce5a-11ea-8051-d513211369ff.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floganmc10%2Ftf2-obj-detect-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Floganmc10%2Ftf2-obj-detect-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floganmc10%2Ftf2-obj-detect-app/lists"}