首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >opencv的色彩映射和matplotlib有什么不同吗?

opencv的色彩映射和matplotlib有什么不同吗?
EN

Stack Overflow用户
提问于 2017-12-28 15:40:53
回答 1查看 968关注 0票数 0

我正在做一些深度预测。所以我在Opencv和Matplotlib中都使用了Colormap对预测图像进行处理。然而,它在Matplotlib中表现良好,但在OpenCV(colormap_jet)中表现不佳。

如何在Opencv中解决此问题?因为我想实时使用Opencv。Matplotlib的实时速度太慢。

结果如下所示。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-28 16:29:33

使用matplotlib.pylab.cm为图像着色。

代码语言:javascript
运行
复制
#!/usr/bin/python3
# 2017.12.28 16:26:26 CST
import matplotlib.pyplot as plt
from matplotlib.pylab import cm
import numpy as np
import cv2

## use matplot jet for opencv
def colorize(img):
    gray = None
    if img.ndim == 2:
        gray = img.copy()
    if len(img.shape) == 3:
        gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    canvas = np.uint8(cm.jet(gray)*255)
    canvas = cv2.cvtColor(canvas, cv2.COLOR_RGBA2BGR)
    return canvas

## process
img = cv2.imread("test.png")
res = colorize(img)
cv2.imwrite("res.png", res)

示例1:

生成着色的图像(作为预览代码)。

示例2:

Matplotlib (在jet中)和OpenCV(使用我的函数colorize)中对相同的数据进行着色。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48003559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档