首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何利用opencv获取红外/热视觉

如何利用opencv获取红外/热视觉
EN

Stack Overflow用户
提问于 2015-05-27 12:56:17
回答 1查看 3K关注 0票数 0

我想实现红外视觉效果(通常用于电影中的外星人),就像掠夺者2中使用的OpenCV一样。

我已经搜索过,但我已经指出,IR过滤器是由支持它的摄像头硬件制作的。

是否有任何方法达到接近上述图片的效果使用OpenCV?我不知道自己到底要搜索什么功能。需要来自OpenCV /图像处理专家的建议和指导。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-28 09:48:09

正如@Wojciech Frohmberg在评论中指出的那样,从光源中提取红外线通道是不可能的,除非你有一台能专门探测红外线的照相机。更多信息可以从这个论坛维基中读取。

为了取得最接近的效果,我使用了HSV ColorMap,正如@berak在评论中指出的那样,多亏了他。

代码语言:javascript
运行
复制
cv::applyColorMap (InputArray src, OutputArray dst, int colormap)

效应:

代码:

代码语言:javascript
运行
复制
-(cv::Mat) convertIntoAlienVision:(cv::Mat)inputImage
{
    cv::Mat grayMat;

    if(inputImage.channels() == 1)
        grayMat = inputImage;
    else{
        grayMat = cv::Mat(inputImage.rows, inputImage.cols, CV_8UC3);
        cv::cvtColor(inputImage, grayMat, CV_BGR2GRAY);
    }

    cv::Mat coloredImage;
    cv::applyColorMap(grayMat, coloredImage, cv::COLORMAP_HSV);
    return coloredImage;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30483149

复制
相关文章

相似问题

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