{"id":20382518,"url":"https://github.com/aprilrobotics/apriltag-generation","last_synced_at":"2025-07-05T11:35:33.379Z","repository":{"id":37390643,"uuid":"149362193","full_name":"AprilRobotics/apriltag-generation","owner":"AprilRobotics","description":"Generate AprilTags in custom layouts","archived":false,"fork":false,"pushed_at":"2022-03-27T04:28:47.000Z","size":1345,"stargazers_count":155,"open_issues_count":4,"forks_count":46,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-12-09T13:41:07.793Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AprilRobotics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-18T23:01:10.000Z","updated_at":"2024-11-12T04:32:53.000Z","dependencies_parsed_at":"2022-09-15T00:11:23.664Z","dependency_job_id":null,"html_url":"https://github.com/AprilRobotics/apriltag-generation","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/AprilRobotics%2Fapriltag-generation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AprilRobotics%2Fapriltag-generation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AprilRobotics%2Fapriltag-generation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AprilRobotics%2Fapriltag-generation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AprilRobotics","download_url":"https://codeload.github.com/AprilRobotics/apriltag-generation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230527875,"owners_count":18240052,"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-15T02:17:57.736Z","updated_at":"2024-12-20T03:10:22.330Z","avatar_url":"https://github.com/AprilRobotics.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"AprilTag-Generation\n===================\n\nGenerate AprilTags in custom layouts for [AprilTag 3](https://github.com/AprilRobotics/apriltag-generation).\n\n# How to use the package\n\nFirst, you will need to generate the code associated with the layout of your marker : \n\n~~~\nant\njava -cp april.jar april.tag.TagFamilyGenerator \u003clayout\u003e \u003cminimalHammingDistance\u003e\n~~~\nThe choices of layout are : \n- standard_x, new-style april tag with one pixel of data on the outside\n- classic_x, old-style april tag\n- circle_x, for circular april tag \n- custom_[...]. For more details about this last one, please check https://github.com/AprilRobotics/apriltag-generation/blob/master/src/april/tag/TagFamilyGenerator.java\n\nWith x the size of the tag (in pixels). The smaller is x, the faster the generation is.\n\nYou will have as output into the terminal a string, starting from \"package april.tag;\" and ending at the end of the terminal.\nThis string is your new code that will be use for generating your markers. Save it into a .java file (ex : TagStandard20h9.java), into src/april/tag.\n\nThen, execute : \n\n~~~ \nant\n~~~\n\nNext, you can use this command to generate the C code associated with the marker : \n\n~~~\njava -cp april.jar april.tag.TagToC april.tag.\u003cname_of_new_java_file\u003e\n~~~\n\nOr generate your new markers as .png : \n\n~~~\njava -cp april.jar april.tag.GenerateTags april.tag.\u003cname_of_new_java_file\u003e .\n~~~\n\nNB : If the format of the markers is very small (ex : by default, 9x9 pixels), you'll need to rescale them. To do so, you may use the following command (Unix) : \n\n~~~\nconvert \u003csmall_marker\u003e.png -scale \u003cscale_chosen_in_percent\u003e% \u003cbig_marker\u003e.png\n~~~\n\n# Example usage for generating the 21h7 circular tag family:\n\n\n```\n$ ant\n$ java -cp april.jar april.tag.TagFamilyGenerator circle_9 7\n```\nThen to generate the c code and tag images after copying the output into the source folder:\n```\n$ ant\n$ java -cp april.jar april.tag.TagToC april.tag.TagCircle21h7\n$ java -cp april.jar april.tag.GenerateTags april.tag.TagCircle21h7 .\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faprilrobotics%2Fapriltag-generation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faprilrobotics%2Fapriltag-generation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faprilrobotics%2Fapriltag-generation/lists"}