{ "info": { "author": "Luke Miller", "author_email": "dodgyville@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# fiducialary\n\n`fiducialary` is a python module for generating fiducial marks for use in imaging systems. These artificial markers made using circular codes can be used in photogrammetry, volumetric capture and vision search.\n\nThis project also provides some pre-generated markers you can use without having to run the program to generate them.\n\n![Alt text](markers/sample.png?raw=true \"Circular code\")\n\n\n### Contributors\n* Luke Miller\n\n### Thanks\n\n`fiducialary` made for 'Project 39', a creative art project supported by Creative Victoria. \n\n\n## Using existing markers\n\n### Looking for markers to use?\n\n\nThe marker images generated by this program in the `markers` folder are free to use in any way, commercial or otherwise. \nI release these free fiducial markers into the public domain.\nDownload them direct:\nhttps://gitlab.com/dodgyville/fiducialary/tree/master/markers\n\nNote: The `fiducialary` program that generated them is licensed under the open source LGPLv3 and is not public domain.\n\nRecommended: Print out one of the A4 pdf files and separate the markers for use.\n\n\n### How to use markers\n* Markers work best when surrounded by space - so don't bend, cut or write on markers.\n* Try to have three or four markers in each image.\n* Do not use duplicate markers, all markers should be unique.\n* Some research indicates that the more of your pixels occupied by a marker the better\nbut real-world results suggest not to make them too large.\n\n\n## Generating your own markers\n\n### Install\n\n`pip install fiducialary`\n\n\n### Source\n\n`git clone https://gitlab.com/dodgyville/fiducialary`\n\n\n### Usage\n\n#### A single marker\n```\nfrom fiducialary import generate_marker \n\nmarker = generate_marker()\nmarker.write_to_png(f\"example.png\")\n```\n\n\n#### A batch of markers\n```\nfrom fiducialary import generate_markers \n\nmarkers = generate_markers()\nsave_markers_individually(markers)\n\n```\n\n#### A 20-bit marker\n\n```\nmarker = generate_marker(bits=20)\n```\n\n### Example marker\n![Alt text](markers/sample.png?raw=true \"Circular code\")\n\n \n### Known issues\n* When generating multiple markers, duplicate patterns may occur but rotated compared to each other. So watch out for that.\n\n### Roadmap\n* Test for rotated duplicates\n* Better documentation \n\n### Changelog\nv1.0.1\n* fix packaging issue\n\nv1.0.0\n* initial release", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/dodgyville/fiducialary", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "fiducialary", "package_url": "https://pypi.org/project/fiducialary/", "platform": "", "project_url": "https://pypi.org/project/fiducialary/", "project_urls": { "Homepage": "https://gitlab.com/dodgyville/fiducialary" }, "release_url": "https://pypi.org/project/fiducialary/1.0.1/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Module for generating circular fiducial markers for use in imaging systems.", "version": "1.0.1" }, "last_serial": 5528586, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "e09f219d137067c47223c13a925b3492", "sha256": "bd4b3d8c76b6748ca7abda51dd69a39e1a61b09905b0cef1959a4a79d930a7e1" }, "downloads": -1, "filename": "fiducialary-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e09f219d137067c47223c13a925b3492", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4183, "upload_time": "2019-07-04T22:23:45", "url": "https://files.pythonhosted.org/packages/1d/7a/aec4b56904f5519d9100b1cd1aff15bd142a56be418a06dbe54a3c235320/fiducialary-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "8c193303200a85cca65ff60beb0e71dc", "sha256": "ae283f9a6c692b5e56ac059565fdb50fae3f2ed703cb889b3854570a4471330b" }, "downloads": -1, "filename": "fiducialary-1.0.1.tar.gz", "has_sig": false, "md5_digest": "8c193303200a85cca65ff60beb0e71dc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4482, "upload_time": "2019-07-14T00:35:38", "url": "https://files.pythonhosted.org/packages/27/12/1982a19273ac728f635d26696e14040a4287f96b5a86de23e6e2b209aad4/fiducialary-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8c193303200a85cca65ff60beb0e71dc", "sha256": "ae283f9a6c692b5e56ac059565fdb50fae3f2ed703cb889b3854570a4471330b" }, "downloads": -1, "filename": "fiducialary-1.0.1.tar.gz", "has_sig": false, "md5_digest": "8c193303200a85cca65ff60beb0e71dc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4482, "upload_time": "2019-07-14T00:35:38", "url": "https://files.pythonhosted.org/packages/27/12/1982a19273ac728f635d26696e14040a4287f96b5a86de23e6e2b209aad4/fiducialary-1.0.1.tar.gz" } ] }