python - Python中使用opencv进行灰度缩放后颜色显示异常
问题描述
我正在尝试在 python 中使用 Opencv 来处理数字病理图像。我将 csv 图像转换为数组,我想将图像转换为灰度,这是我的代码:
start = time.time()
slide = openslide.open_slide("/Users/mihaoyang/Desktop/Pathology_Images/348980_case2_CD4.svs")
level_count = slide.level_count
print('level_count = ', level_count)
[column, row] = slide.dimensions
print('dimensions = ', column, row)
[column0, row0] = slide.level_dimensions[0]
[column1, row1] = slide.level_dimensions[1]
[column2, row2] = slide.level_dimensions[2]
print('dimensions[0] = ', [column0, row0])
print('dimensions[1] = ', [column1, row1])
print('dimensions[2] = ', [column2, row2])
slide_level_downsamples = slide.level_downsamples[2]
print(slide_level_downsamples)
slide_downsamples = slide.get_best_level_for_downsample(20.0)
print(slide_downsamples)
slide_normal = numpy.array(slide.read_region((12000, 15500), 0, (500, 500)))
slide_gray = numpy.array(slide.read_region((12000, 15500), 0, (500, 500)).convert('L'))
我运行代码后,得到如下图
解决方案
假设您正在使用 MatPlotLib 绘制看起来像是viridis
颜色图的图像,请在此处查看它们。如果要将颜色图更改为灰度,请gray
输入plt.imshow()
.
IE
plt.figure()
plt.imshow(slide_gray, 'gray')
plt.show()
如果您不使用 matplotlib,那么这仍然是您的问题,因此请查看图像绘图库文档以更改颜色图。
推荐阅读
- javascript - 在 tensorflow.js 中加载训练模型时节点获取错误
- php - 从数据库计算
- swift - NWConnection 脚本适用于 iPhone 但不适用于 Apple Watch
- c++ - 如何在类构造函数中绑定对堆栈分配类的引用?
- sql - CSV 导入失败 - 批量加载数据转换错误(指定代码页的类型不匹配或无效字符)
- linux - “软件包 linux-modules-extra-5.4.0-56-generic 需要重新安装,但我找不到它的存档。” 错误弹出
- python - 在 DetailView 中使用对象
- java - Java Executor 获得第一个匹配条件的结果
- javascript - 在 node.js 中的文件之间共享变量
- php - 是否有可能在 PhPMyAdmin 中将所有实例添加到一行而不是四个?