python - 使用 scikit 在 python 上将图像转换为灰度
问题描述
我需要编写一个函数,将表示为 numpy 数组的图像转换为灰度。以下是我收到的一些提示。我只被允许使用skimage.color
.
一些相关提示:
查看skimage.color
子包中的一些有用的转换功能。默认情况下,scikit-image
转换函数将返回具有 0-1 浮点表示的图像。我们不希望这样;我们想要 0-255 的整数表示。NumPy 有一个数据类型:(np.uint8
对于 8 位无符号整数)。回想一下,该np.array
函数采用一个可选参数dtype
来指定底层数组的类型。
这是我尝试过的:
from skimage.color import rgb2gray
def to_grayscale_uint(img_array):
original = data.img_array()
grayscale = rgb2gray(original)
return grayscale
解决方案
您可以只使用该skimage
函数,然后乘以 255。然后,将数组转换为整数:
array *= 255
array.astype(np.uint8)
推荐阅读
- android-studio - 如何去除工具栏的阴影?
- sql-server - 带有聚合函数的 sql 中的动态枢轴
- matlab - Stateflow 中的转换动作和条件动作
- python - 将 CRC 值转换为字节
- r - 如何在不需要重新启动 R 会话的情况下清理 R 内存
- matlab - Matlab 将时间表与逻辑内容同步
- apache-kafka - 现有镜像 Kafka 主题方法的主要区别是什么
- javascript - 加载 1 秒页面后显示 Facebook 登录按钮
- android - CoordinatorLayout 导致 FrameLayout 落后于底部的导航栏
- java - 无法使用 jar 命令构建 - java.io.IOException: line too long