{ "info": { "author": "Michael Hirsch, Ph.D.", "author_email": "scivision@users.noreply.github.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Scientific/Engineering" ], "description": "[![image](https://zenodo.org/badge/DOI/10.5281/zenodo.1043971.svg)](https://doi.org/10.5281/zenodo.1043971)\n\n[![image](https://travis-ci.org/scivision/pyoptflow.svg?branch=master)](https://travis-ci.org/scivision/pyoptflow)\n[![image](https://coveralls.io/repos/github/scivision/pyoptflow/badge.svg?branch=master)](https://coveralls.io/github/scivision/pyoptflow?branch=master)\n[![image](https://ci.appveyor.com/api/projects/status/9iv32q84vd3gbdde?svg=true)](https://ci.appveyor.com/project/scivision/pyoptflow)\n[![Maintainability](https://api.codeclimate.com/v1/badges/b7a550fa1d50af8491d3/maintainability)](https://codeclimate.com/github/scivision/pyoptflow/maintainability)\n[![Python versions (PyPI)](https://img.shields.io/pypi/pyversions/pyoptflow.svg)](https://pypi.python.org/pypi/pyoptflow)\n[![PyPi Download stats](http://pepy.tech/badge/pyoptflow)](http://pepy.tech/project/pyoptflow)\n\n# Optical Flow: Horn-Schunck\n\nPython implementation of optical flow estimation using only the Scipy stack for:\n\n* Horn Schunck\n\nLucas-Kanade is also possible in the future, let us know if you're interested in Lucas Kanade.\n\n## Install\n\n```sh\npython -m pip install -e .\n```\n\noptionally, to run self-tests:\n\n```sh\npython -m pip install -e .[tests]\n\npytest -v\n```\n\n## Examples\n\nThe program scripts expect `directory` `glob pattern`\n\n[imageio](https://imageio.github.io/) loads a wide varity of images *and* video.\n\n### Box\n\n python HornSchunck.py data/box box*.bmp\n\n### Office\n\nall time steps:\n\n python HornSchunck.py data/office office*.bmp\n\nor just the first 2 time steps:\n\n python HornSchunck.py data/office office.[0-2].bmp\n\n### Rubic\n\n python HornSchunck.py data/rubic rubic*.bmp\n\n### Sphere\n\n python HornSchunck.py data/sphere sphere*.bmp\n\n## Compare: Matlab Computer Vision toolbox\n\nIn `Matlab` directory, similar method in Octave and a comparison plot using Matlab Computer Vision toolbox.\n\n## Reference\n\n[Inspiration](https://github.com/ablarry91/Optical-Flow-LucasKanade-HornSchunck/)", "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/scivision/pyoptflow", "keywords": "optical flow,Horn-Schunck,Lucas-Kanade", "license": "", "maintainer": "", "maintainer_email": "", "name": "pyoptflow", "package_url": "https://pypi.org/project/pyoptflow/", "platform": "", "project_url": "https://pypi.org/project/pyoptflow/", "project_urls": { "Homepage": "https://github.com/scivision/pyoptflow" }, "release_url": "https://pypi.org/project/pyoptflow/1.3.1/", "requires_dist": null, "requires_python": ">= 3.6", "summary": "Pure Python optical flow: Horn-Schunck", "version": "1.3.1" }, "last_serial": 5457300, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "ca798d95030f4afd90e44a2d7300aedf", "sha256": "3a85468b0a108d3ad778efc8b7863354f54f2807774cf6c3f4eeef927bac8c79" }, "downloads": -1, "filename": "pyoptflow-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ca798d95030f4afd90e44a2d7300aedf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3914, "upload_time": "2017-04-24T09:25:21", "url": "https://files.pythonhosted.org/packages/3a/02/f59001c084871200c0030c1261b26a955fd321ca7b8db54dca3c2d3d1bf1/pyoptflow-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "debb0942c22e0cbe9557c7bbacd3896c", "sha256": "ca14b6eba373bc51729584d290a1f2c716b63586802af83e828bb40c9ad786b3" }, "downloads": -1, "filename": "pyoptflow-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "debb0942c22e0cbe9557c7bbacd3896c", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 5105, "upload_time": "2017-11-08T16:30:18", "url": "https://files.pythonhosted.org/packages/cf/26/154a886a6a2c4a029163d457eb58eec08dfe6f77d83105004461d9b71348/pyoptflow-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78caa6b5ef2376fef6fdf0b009d70da0", "sha256": "777ff3e58e7da3298c89f70b8d381a6af8e2d876a0e2bc575fdf039597c18e98" }, "downloads": -1, "filename": "pyoptflow-1.1.0.tar.gz", "has_sig": false, "md5_digest": "78caa6b5ef2376fef6fdf0b009d70da0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4155, "upload_time": "2017-11-08T16:30:17", "url": "https://files.pythonhosted.org/packages/f7/08/47adf32b9de63e221906aba57f7d5ac5dd1939d1f1385a5cc8ecd3763b56/pyoptflow-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "02511c22f9e19076c9d1265ca2717927", "sha256": "877e02f2341ac31351c3ea273a2ff82df858572a085544200c351249a03e5bd4" }, "downloads": -1, "filename": "pyoptflow-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "02511c22f9e19076c9d1265ca2717927", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 6250, "upload_time": "2018-02-18T07:16:57", "url": "https://files.pythonhosted.org/packages/2e/47/08a10c32b45a5384b7836211f72e06d5984c4b752a25f77822f9cd670648/pyoptflow-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce7d73d1e2babd3daa10eec479550d60", "sha256": "129c90185a02319838064db600c5c2a34959353ca6fbe2389219b5c90844cc40" }, "downloads": -1, "filename": "pyoptflow-1.2.0.tar.gz", "has_sig": false, "md5_digest": "ce7d73d1e2babd3daa10eec479550d60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4346, "upload_time": "2018-02-18T07:16:54", "url": "https://files.pythonhosted.org/packages/2e/20/0e4830cb79a2028212f0a469189a61496de85babadb38d28e1e311d56298/pyoptflow-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "c45c79b492747b20350935aebd5ae706", "sha256": "916536e22ddcf20e874b199700956a4eb460f652d1e5bb0542ed596da165c9ba" }, "downloads": -1, "filename": "pyoptflow-1.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c45c79b492747b20350935aebd5ae706", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 8316, "upload_time": "2018-03-26T15:59:19", "url": "https://files.pythonhosted.org/packages/b3/6f/47d2047b74d52c38d3c0b23d89bd0b7f30218c11889d8fd1e6727460ac7c/pyoptflow-1.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e033370ca5ae532171a726471eb84c3b", "sha256": "a5e4f4a3974b3daa4e8caa0c635182acf848a9beea747eaa13eed26c9fc3f3c9" }, "downloads": -1, "filename": "pyoptflow-1.2.1.tar.gz", "has_sig": false, "md5_digest": "e033370ca5ae532171a726471eb84c3b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5383, "upload_time": "2018-03-26T15:59:20", "url": "https://files.pythonhosted.org/packages/8e/68/ff858170c1b54cc499964ae6e8bd6d7225b69f4c3358580af02ef15c5212/pyoptflow-1.2.1.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "84d17073debf948806eebb400db95554", "sha256": "7b8b993147b1925fd6d56c10628896d9a829184163387287f152a237a472bce1" }, "downloads": -1, "filename": "pyoptflow-1.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "84d17073debf948806eebb400db95554", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 9380, "upload_time": "2018-03-26T17:30:01", "url": "https://files.pythonhosted.org/packages/77/6d/26e9921249adf32b1ef04a5e5fccb7cf30f9d09e2c35896c5c0dbe18f238/pyoptflow-1.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "19f4d44f959a70346531773257c86b25", "sha256": "3543f97a070640cfd8e4fa5cd82bcac703055e3517db75db698d89e6c37a90dd" }, "downloads": -1, "filename": "pyoptflow-1.3.0.tar.gz", "has_sig": false, "md5_digest": "19f4d44f959a70346531773257c86b25", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5652, "upload_time": "2018-03-26T17:30:01", "url": "https://files.pythonhosted.org/packages/23/e2/d6010233c88905832525491d46e7440f578d72190f078d915c3563a77920/pyoptflow-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "16207805ba4c3d8cbf18fabffd24cf80", "sha256": "e8cb956d35ae7b439b9e1ccdd5ad2e87d914c12fa259bc8d3f88c3cae122a037" }, "downloads": -1, "filename": "pyoptflow-1.3.1.tar.gz", "has_sig": false, "md5_digest": "16207805ba4c3d8cbf18fabffd24cf80", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.6", "size": 5637, "upload_time": "2019-06-27T14:51:02", "url": "https://files.pythonhosted.org/packages/17/47/2bdce1f41e03502a5a5d05c81ac6a73fb52956c4842200fd89ab0d9a2954/pyoptflow-1.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "16207805ba4c3d8cbf18fabffd24cf80", "sha256": "e8cb956d35ae7b439b9e1ccdd5ad2e87d914c12fa259bc8d3f88c3cae122a037" }, "downloads": -1, "filename": "pyoptflow-1.3.1.tar.gz", "has_sig": false, "md5_digest": "16207805ba4c3d8cbf18fabffd24cf80", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.6", "size": 5637, "upload_time": "2019-06-27T14:51:02", "url": "https://files.pythonhosted.org/packages/17/47/2bdce1f41e03502a5a5d05c81ac6a73fb52956c4842200fd89ab0d9a2954/pyoptflow-1.3.1.tar.gz" } ] }