{ "info": { "author": "Michael Butlitsky", "author_email": "aristofun@yandex.ru", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "License :: Other/Proprietary License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Image Recognition", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# Face Age & Gender detection tool\nSimple opencv & tensorflow solution to estimate Age and Gender in your \nnext project. Command line or Python DIY style. \n\nBased on and forked from: https://github.com/yu4u/age-gender-estimation\n\nGood enough for pet-projects and prototypes, but not ready for production \nreal-life applications\n\n## How\n\n```commandline\npip3 install py-agender[cpu] # for the cpu version of TensorFlow\npip3 install py-agender[gpu] # for the gpu version of TensorFlow\n```\n\n**Warning**: ~190MB download (pretrained network is heavy). \n\n\nCLI: \n\n```commandline\npy-agender PATH_TO_IMAGE\n```\n\nPython:\n\n```python\nfrom pyagender import PyAgender\n\nagender = PyAgender() \n# see available options in __init__() src\n\nfaces = agender.detect_genders_ages(cv2.imread(MY_IMAGE))\n# [\n# {left: 34, top: 11, right: 122, bottom: 232, width:(r-l), height: (b-t), gender: 0.67, age: 23.5},\n# ...\n# ]\n\n# Additional options & methods in PyAgender source\n``` \n\nDon't forget to download pretrained weights if using source code DIY style.\n\n## TODO: \n- add options (like STDIN input, output formatters etc.) for useful commandline \napplications \n- add help output\n- train better network with higher image resolution\n- train another (more compact & precise) network architecture\n\n## Tests\n\n```commandline\npython3 -m unittest \n```\n\n## Dependencies\n- Python 3.5, 3.6, 3.7\n- numpy ~> 1.15\n- Keras ~> 2.2\n- tensorflow or tensorflow-gpu ~> 1.10\n- opencv-python ~> 3.4.2+contrib\n\nTested on:\n- MacOS 10.13 high Sierra without GPU (you're welcome to update & contribute!)\n\n\n# Model\n\nThese weigts are from https://github.com/yu4u/age-gender-estimation\non first console version run they are cached in **./pyagender.pretrained_models** folder:\n\nhttps://github.com/yu4u/age-gender-estimation/releases/download/v0.5/weights.28-3.73.hdf5\n\n# License\n\nThis project is released under the MIT license.\n\nHowever, [the IMDB-Wiki dataset](https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/) used for pretrained network above is originally provided under the following conditions:\n\n> Please notice that this dataset is made available for academic research purpose only. All the images are collected from the Internet, and the copyright belongs to the original owners. If any of the images belongs to you and you would like it removed, please kindly inform us, we will remove it from our dataset immediately.\n\nRefer to fresh IMDB-Wiki dataset License and act accordingly.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/aristofun/py-agender", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "py-agender", "package_url": "https://pypi.org/project/py-agender/", "platform": "", "project_url": "https://pypi.org/project/py-agender/", "project_urls": { "Homepage": "https://github.com/aristofun/py-agender" }, "release_url": "https://pypi.org/project/py-agender/0.0.9/", "requires_dist": [ "numpy (<=1.15.9,>=1.13)", "Keras (<2.2.5,>=2.2.4)", "opencv-python (<3.5,>=3.4.2+contrib)", "twine (>=1.10)", "tensorflow (<1.19.0,>=1.10.0) ; extra == 'cpu'", "tensorflow-gpu (<1.19.0,>=1.10.0) ; extra == 'gpu'" ], "requires_python": "", "summary": "Simple opencv & tensorflow based solution to estimate Faces, Age and Gender on pictures", "version": "0.0.9" }, "last_serial": 5731085, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "2e76dcfc050e8fe7f351aaa58397fb1f", "sha256": "e1915747a2cc1b2d9b4349876cd2715eb60cb0625d14947f37682bf199652c5d" }, "downloads": -1, "filename": "py_agender-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2e76dcfc050e8fe7f351aaa58397fb1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9619, "upload_time": "2018-08-09T12:25:30", "url": "https://files.pythonhosted.org/packages/57/69/25d87dfbe919ad233234b897a145c48c8a97b99aa636ddcc74597ff52fcc/py_agender-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f4384fbb69640fae32f9847fa8536e65", "sha256": "06e63de8490600549f85ed1a06a4a6baad322114e558773618e1ec45f0132aa3" }, "downloads": -1, "filename": "py-agender-0.0.3.tar.gz", "has_sig": false, "md5_digest": "f4384fbb69640fae32f9847fa8536e65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142686, "upload_time": "2018-08-09T12:25:32", "url": "https://files.pythonhosted.org/packages/ed/d6/b4f38a194d457e51a09b9398b57ea65a30e9426b1013f45e75a2e027fa9f/py-agender-0.0.3.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "47aec58e787be1e7d4efabd929e48a93", "sha256": "12a5a80a0928ebce8b6e21aa94dc7a2e4592d4499e61ad23d64f92eefff4ed04" }, "downloads": -1, "filename": "py_agender-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "47aec58e787be1e7d4efabd929e48a93", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9589, "upload_time": "2018-08-09T13:07:27", "url": "https://files.pythonhosted.org/packages/b4/78/f471605f105f84ed319345a45ce8747dcb5e44774560d2f01e1657f5f681/py_agender-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fef8bed3f48b4792b034f76c362d04fc", "sha256": "b48ae34b7958d817259dd95a7548c568fada08e3ad842d9f57ab212a4dcc092a" }, "downloads": -1, "filename": "py-agender-0.0.5.tar.gz", "has_sig": false, "md5_digest": "fef8bed3f48b4792b034f76c362d04fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142832, "upload_time": "2018-08-09T13:07:29", "url": "https://files.pythonhosted.org/packages/a7/4b/ccc1bca5f1150d4169b1cea49e833652a9e6f88b71492199b7621691da9b/py-agender-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "e8fc09dcb5dfa360f5b017cf065d6fe1", "sha256": "de98f639034eefe365a3cb293faf73d2684761fd34eb03ab6cccbf2fff25dc83" }, "downloads": -1, "filename": "py_agender-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "e8fc09dcb5dfa360f5b017cf065d6fe1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9589, "upload_time": "2018-08-09T13:25:33", "url": "https://files.pythonhosted.org/packages/f2/8c/653f77a32a310ea5421326cdea94ff2565c7042b7c45823dc434c57d47d4/py_agender-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6ab118470562a2346e2888245b08a5be", "sha256": "7b62f46568910ea3c046a630bc84aba88c48160c522d1d625cff53553e65bfb0" }, "downloads": -1, "filename": "py-agender-0.0.6.tar.gz", "has_sig": false, "md5_digest": "6ab118470562a2346e2888245b08a5be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142849, "upload_time": "2018-08-09T13:25:38", "url": "https://files.pythonhosted.org/packages/b1/21/6ce1509e9986189270d979beb7321c65c3982de260cca22a266cd9295f41/py-agender-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "c67b1dfeca8e303211fbdf911824c7fb", "sha256": "037abba39c844afb84b5d10f11cac263d6d6401451426a447f1752893c3a2738" }, "downloads": -1, "filename": "py_agender-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "c67b1dfeca8e303211fbdf911824c7fb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 145566, "upload_time": "2018-08-09T13:36:24", "url": "https://files.pythonhosted.org/packages/01/11/eae85694ecfc707b7d6ac6d96239f67dbeb4188e4643abcae6780a68775b/py_agender-0.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7b7bce58314b50540dfb82144c972bd", "sha256": "a72cb9184d44a42464ce9a531ab6db84191d8a6225f526d353cac95dc89d0e35" }, "downloads": -1, "filename": "py-agender-0.0.7.tar.gz", "has_sig": false, "md5_digest": "b7b7bce58314b50540dfb82144c972bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142865, "upload_time": "2018-08-09T13:36:26", "url": "https://files.pythonhosted.org/packages/7d/2f/5be59adee66da2b9094bc5b404442eecc0a0a8b461577fadb54019001ee5/py-agender-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "23c22a80fb54c6515c254e77312cdfe7", "sha256": "a7d1f2738fd49c3e39ca8f4217ca20e42d28277df06bf85e263297ffcc0f4df9" }, "downloads": -1, "filename": "py_agender-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "23c22a80fb54c6515c254e77312cdfe7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 188306134, "upload_time": "2018-08-12T09:08:39", "url": "https://files.pythonhosted.org/packages/40/b7/3a04aaa8df0c9c923e97e93f9c99ad1daf055cbc8bd4086c8f0c9c0711e3/py_agender-0.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "640dc945ebae77a4f0f30e5cd818bb10", "sha256": "c3e807518ec94eec957529292e9374e988726fb06a720fcdfb0ef2bddabaaff9" }, "downloads": -1, "filename": "py-agender-0.0.8.tar.gz", "has_sig": false, "md5_digest": "640dc945ebae77a4f0f30e5cd818bb10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 188304353, "upload_time": "2018-08-12T09:21:57", "url": "https://files.pythonhosted.org/packages/f9/5d/88e6cf2ba8b2f7b3ec6aac79d1885cda62b46fa0338617dbb62aeb1147a2/py-agender-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "646857162ee09a3e71b4324e1ef14a63", "sha256": "f0317cc59d7493134704c3fb912a47b2308d14fc908751181d83d5a881317867" }, "downloads": -1, "filename": "py_agender-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "646857162ee09a3e71b4324e1ef14a63", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 188307094, "upload_time": "2019-08-26T13:59:23", "url": "https://files.pythonhosted.org/packages/86/70/1d40c3bdfe83e9ce29a7780e5ca21c8da695aa3e20a0553586f66f1b2398/py_agender-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "338033cbf0353b9c9ba1fca4f513dc4d", "sha256": "277277b7c9713e178d21536e28b502b7c6f5c55a496c645cd111696ec4131b90" }, "downloads": -1, "filename": "py-agender-0.0.9.tar.gz", "has_sig": false, "md5_digest": "338033cbf0353b9c9ba1fca4f513dc4d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 188301938, "upload_time": "2019-08-26T14:04:40", "url": "https://files.pythonhosted.org/packages/7e/64/2018dcfcd6bc5c01686332ac6eb8a06632665407a3b70240ff58ce163d91/py-agender-0.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "646857162ee09a3e71b4324e1ef14a63", "sha256": "f0317cc59d7493134704c3fb912a47b2308d14fc908751181d83d5a881317867" }, "downloads": -1, "filename": "py_agender-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "646857162ee09a3e71b4324e1ef14a63", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 188307094, "upload_time": "2019-08-26T13:59:23", "url": "https://files.pythonhosted.org/packages/86/70/1d40c3bdfe83e9ce29a7780e5ca21c8da695aa3e20a0553586f66f1b2398/py_agender-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "338033cbf0353b9c9ba1fca4f513dc4d", "sha256": "277277b7c9713e178d21536e28b502b7c6f5c55a496c645cd111696ec4131b90" }, "downloads": -1, "filename": "py-agender-0.0.9.tar.gz", "has_sig": false, "md5_digest": "338033cbf0353b9c9ba1fca4f513dc4d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 188301938, "upload_time": "2019-08-26T14:04:40", "url": "https://files.pythonhosted.org/packages/7e/64/2018dcfcd6bc5c01686332ac6eb8a06632665407a3b70240ff58ce163d91/py-agender-0.0.9.tar.gz" } ] }