使用mainifest改进基于ISOMAP的彩色光线转换的灰度方法[Cui等人,2010]

SOMGraySclae的Python项目详细描述


图像灰度化 Image Grayscale

本文的图像灰度化实现主要基于:

  1. Data-driven Color Manifolds [Nguyen et al. 2015].
  2. Color-to-gray conversion using ISOMAP [Cui et al. 2010].
  3. 一种快速映射Isomap算法 [圣少友 et al. 2009].

使用方法:

获取灰度图
gray, gray_reverse = som.get_gray_scal(os.path.dirname(__file__) + '/datasets/apple/apple_0.png')
plt.imsave(os.path.dirname(__file__) + '/gray.png', gray, cmap='gray',vmin = 0, vmax = 1)
plt.imsave(os.path.dirname(__file__) + '/gray_reverse.png', gray, cmap='gray', vmin=0, vmax=1)
获取一维流形:
som = SOMGraySclae()
manifest_1d = som.get_1d_manifold(os.path.dirname(__file__) + '/datasets/apple/apple_0.png')
plt.imsave(os.path.dirname(__file__) + '/manifest_1d.png', manifest_1d, cmap='gray', vmin=0, vmax=1)
获取二维流形:
som = SOMGraySclae()
manifest_2d = som.get_2d_manifold(os.path.dirname(__file__) + '/datasets/apple/apple_0.png')
plt.imsave(os.path.dirname(__file__) + '/manifest_2d.png', manifest_2d, cmap='gray', vmin=0, vmax=1)
获取debug plt:
som = SOMGraySclae()
som.color_to_gray_debug(os.path.dirname(__file__) + '/datasets/apple/apple_0.png',
                   gray_name='gray', gray_reverse_name='gray_reverse', debug=True)    

灰度化结果

输入图像:

获取灰度图,输出图像:

*

for debug:

所有结果:

感谢

项目中采用Nguyen等人的论文实现,基于以下开源项目: https://github.com/tody411/SOM-ColorManifolds

License

The MIT License 2017 (c) tody

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
我可以用C++代码使用java代码吗?   java使用JSR303在派生类中提供更具体的约束   java在这个查找唯一路径数算法中我做错了什么?   java如何为2个不同的服务提供商使用2个不同的SSL证书?   java在Gridview上绘制文本   java使用连接for循环构建字符串名   java StringBuilder拆分无法处理某些文件   java事件关注EditText   Java Web Start“找不到URL的缓存资源”   java程序从命令行运行的速度比在Eclipse中慢   java为什么HttpServletRequest会截断#字符上的url输入?   java自定义折叠工具栏平滑标题大小调整   使用Mockito对安卓 java中调用另一个静态函数的函数进行单元测试   http在java客户机中使用cachecontrol头   java如何使用。是否使用Delimiter从输入文件中排除标点符号和数字?   使用上下文作为参数/参数的java   java更有效地从Jar中提取文件   java为多个JButton提供相同的actionListener