mirror of
https://github.com/wassname/scikit-image.git
synced 2026-06-29 09:06:25 +08:00
64 lines
1.8 KiB
Python
64 lines
1.8 KiB
Python
__doc__ = """Utilities to read and write images in various formats.
|
|
|
|
The following plug-ins are available:
|
|
|
|
"""
|
|
|
|
from ._plugins import use as use_plugin
|
|
from ._plugins import available as plugins
|
|
from ._plugins import info as plugin_info
|
|
from ._plugins import configuration as plugin_order
|
|
available_plugins = plugins()
|
|
|
|
for preferred_plugin in ['matplotlib', 'pil', 'qt', 'freeimage', 'null']:
|
|
if preferred_plugin in available_plugins:
|
|
try:
|
|
use_plugin(preferred_plugin)
|
|
break
|
|
except ImportError:
|
|
pass
|
|
|
|
# Use PIL as the default imread plugin, since matplotlib (1.2.x)
|
|
# is buggy (flips PNGs around, returns bytes as floats, etc.)
|
|
try:
|
|
use_plugin('pil', 'imread')
|
|
except ImportError:
|
|
pass
|
|
|
|
from .sift import *
|
|
from .collection import *
|
|
|
|
from ._io import *
|
|
from .video import *
|
|
|
|
|
|
def _update_doc(doc):
|
|
"""Add a list of plugins to the module docstring, formatted as
|
|
a ReStructuredText table.
|
|
|
|
"""
|
|
from textwrap import wrap
|
|
|
|
info = [(p, plugin_info(p)) for p in plugins() if not p == 'test']
|
|
col_1_len = max([len(n) for (n, _) in info])
|
|
|
|
wrap_len = 73
|
|
col_2_len = wrap_len - 1 - col_1_len
|
|
|
|
# Insert table header
|
|
info.insert(0, ('=' * col_1_len, {'description': '=' * col_2_len}))
|
|
info.insert(1, ('Plugin', {'description': 'Description'}))
|
|
info.insert(2, ('-' * col_1_len, {'description': '-' * col_2_len}))
|
|
info.append(('=' * col_1_len, {'description': '=' * col_2_len}))
|
|
|
|
for (name, meta_data) in info:
|
|
wrapped_descr = wrap(meta_data.get('description', ''),
|
|
col_2_len)
|
|
doc += "%s %s\n" % (name.ljust(col_1_len),
|
|
'\n'.join(wrapped_descr))
|
|
doc = doc.strip()
|
|
|
|
return doc
|
|
|
|
__doc__ = _update_doc(__doc__)
|