{"id":19070296,"url":"https://github.com/amogh7joshi/annotator","last_synced_at":"2026-05-12T23:33:09.935Z","repository":{"id":138929686,"uuid":"361885070","full_name":"amogh7joshi/annotator","owner":"amogh7joshi","description":"A lightweight image annotation framework for deep-learning-based object detection, built using pure OpenCV. ","archived":false,"fork":false,"pushed_at":"2021-07-21T14:22:12.000Z","size":4284,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-02T15:49:54.549Z","etag":null,"topics":["annotation","computer-vision","cpp","object-detection","opencv"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amogh7joshi.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":"2021-04-26T20:28:12.000Z","updated_at":"2021-07-21T14:22:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"2cc8025e-6c0d-437d-80e9-41abf7b40fb7","html_url":"https://github.com/amogh7joshi/annotator","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/amogh7joshi%2Fannotator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amogh7joshi%2Fannotator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amogh7joshi%2Fannotator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amogh7joshi%2Fannotator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amogh7joshi","download_url":"https://codeload.github.com/amogh7joshi/annotator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240122574,"owners_count":19751142,"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":["annotation","computer-vision","cpp","object-detection","opencv"],"created_at":"2024-11-09T01:17:58.403Z","updated_at":"2026-05-12T23:33:09.909Z","avatar_url":"https://github.com/amogh7joshi.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Annotator\n\n**Annotator** is a lightweight framework for constructing object detection annotations. It's built only\nusing OpenCV, with no other third-party libraries involved. The primary frontend consists of a makeshift GUI with buttons\ncorresponding to different labels and a two-click bounding-box creation interface, and the backend\nparses the annotations and places the bounding box coordinates into text files corresponding to the images. \n\n## Installation\n\nTo use Annotator yourself, first clone this repository: \n\n```shell script\ngit clone https://github.com/amogh7joshi/annotator.git\n```\n\nThen, enter the directory and execute the following command to build the compiled program, which will be \ntriggered by the `build.sh` build script:\n\n```shell script\nchmod +x ./build.sh\n./build.sh\n```\n\nNow, you can edit the `config.txt` file with your own parameters for execution.\nEach of the three lines corresponds to the following parameters:\n\n1. The path to the directory containing images (or a directory containing directories of images).\n2. The list of labels that you want to annotate, space-separated.\n3. Whether to recursively search through the sub-directories of the parent path (either 'true' or 'false'.)\n\nFinally, execute the following command and an annotator session will begin:\n\n```shell script\n./annotator\n```\n\n## Usage\n\nAfter the Annotator window launches, it will sequentially load each of the images\nin the directory path that you have provided. From here, you will be presented with a window\nsimilar to the following image:\n\n![Base Image](images/annotator-base.png)\n\nYou can then use the two-click interface by clicking on a specific \npoint of the image (excluding the buttons) and then clicking on a second point.\nFor each set of two clicks, a bounding box will appear. This will then be stored in a \ninternal vector of bounding boxes alongside the selected label, and the process will repeat\nfor each bounding box on each individual image.\n\n![Annotated Image](images/annotator-annotated.png)\n\nYou can click on the different label buttons at the top to switch between labels,\nand this will correspondingly be recorded internally and will appear as such in the \noutput annotation text files. \n\nAdditionally, the following keyboard shortcuts are part of Annotator:\n\n1. **`q`**: Exit the session and close all windows.\n2. **`c`**: Clear the annotations for the current image.\n\n## License and Contributions\n\n![GitHub](https://img.shields.io/github/license/amogh7joshi/annotator?style=flat-square) \n\nThe code in this repository is licensed under the **Apache 2.0 License**,\nsee [LICENSE](LICENSE) for more details and terms of usage. If you have any contributions\nthat you feel may improve Annotator, feel free to contact me at `joshi.amoghn@gmail.com`, and\nif you notice any pressing issues, don't hesitate to head to the Issues portion of the repository\nand let me know.\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famogh7joshi%2Fannotator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famogh7joshi%2Fannotator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famogh7joshi%2Fannotator/lists"}