目录 1 红眼消除 1.1 眼部检测 1.2 红眼遮掩 1.3 清除瞳孔掩模空洞 1.4 红眼修复 2 结果与完整代码 2.1 结果 2.2 代码 3 参考 在本教程中,我们将学习如何完全自动地从照片中消除红眼.如下图所示: 当我们晚上拍摄的照片有红眼效果时,带着血腥眼睛的微笑的人会让人想起德古拉.使用照片编辑工具可以删除红眼,但是需要很长的时间来学习.构建一个可用于各种图像的强大的红眼消除应用程序超出了本文的范围.但是,我们将学习基本原理并验证效果. 什么原因导致闪光灯拍照中的红眼效应? 当你…
目前有许多算法来衡量两幅图像的相似性,本文主要介绍在工程领域最常用的图像相似性算法评价算法:图像哈希算法(img hash).图像哈希算法通过获取图像的哈希值并比较两幅图像的哈希值的汉明距离来衡量两幅图像是否相似.两幅图像越相似,其哈希值的汉明距离越小,通过这种方式就能够比较两幅图像是否相似.在实际应用中,图像哈希算法可以用于图片检索,重复图片剔除,以图搜图以及图片相似度比较. 为什么图像哈希算法能够评估两幅图像的相似性,这就需要从哈希值说起,哈希值计算算法的本质就是对原始数据进行有损压缩,有损…
本文主要讲述利用OpenCV制作低成本立体相机以及如何使用OpenCV创建3D视频,准确来说是模仿双目立体相机,我们通常说立体相机一般是指双目立体相机,就是带两个摄像头的那种(目就是指眼睛,双目就是两只眼睛),这种双目摄像机模仿人的视觉,所以应用很广泛(主要是工业机器人视觉).双目摄像机也广泛应用于无人驾驶,比如特斯拉.图森未来,小鹏汽车在自家的无人驾驶汽车上都安载了立体相机,双目和多目的都有.另外双目视觉加上深度学习还蛮好水论文的.本文主要说的是低成本,实际上没人这样干,有专门的双目立体相机,…
本文主要介绍基于OpenCV contrib中的quality模块实现图像质量评价.图像质量评估Image Quality Analysis简称IQA,主要通过数学度量方法来评价图像质量的好坏. 本文需要OpenCV contrib库,OpenCV contrib库的编译安装见: OpenCV_contrib库在windows下编译使用指南 本文所有代码见: OpenCV-Practical-Exercise 文章目录 1 OpenCV中图像质量评价算法介绍 1.1 相关背景 1.2 OpenC…
人类具有一种视觉注意机制,即当面对一个场景时,会选择性地忽略不感兴趣的区域,聚焦于感兴趣的区域.这些感兴趣的区域称为显著性区域.视觉显著性检测(Visual Saliency Detection,VSD)则是一种模拟人类视觉并从图像中提取显著性区域的智能算法.如下面左边的图所示,人眼在观看该图片时会首先注意其中的小狗,自动忽略背景区域,小狗所在区域就是显著性区域.通过计算机视觉算法对左边的图像进行视觉显著性检测能够得到下图右边的结果,其中黑色区域为不显著区域,白色为显著区域,显著性检测在机器人领…
本文主要介绍基于图像强度变换算法来实现图像对比度均衡.通过图像对比度均衡能够抑制图像中的无效信息,使图像转换为更符合计算机或人处理分析的形式,以提高图像的视觉价值和使用价值.本文主要通过OpenCV contrib中的intensity_transform模块实现图像对比度均衡.如果想了解具体相关方法原理见冈萨雷斯主编的图像处理经典书籍 数字图像处理Digital Image Processing 第四版第三章. 本文需要OpenCV contrib库,OpenCV contrib库的编译安装见…
图像超分辨率(Image Super Resolution)是指从低分辨率图像或图像序列得到高分辨率图像.图像超分辨率是计算机视觉领域中一个非常重要的研究问题,广泛应用于医学图像分析.生物识别.视频监控和安全等领域.随着深度学习技术的发展,基于深度学习的图像超分方法在多个测试任务上,相比传统图像超分方法,取得了更优的性能和效果. 文章目录 1 OpenCV dnn_superres模块介绍 2 OpenCV dnn_superres模块使用 2.1 图像超分放大单输出 2.1.1 接口介绍 2.…
目录 1 什么是曝光融合 2 曝光融合的原理 3 代码与结果 4 参考 本教程中,我们将了解使用OpenCV的Exposure Fusion(曝光融合). 1 什么是曝光融合 曝光融合是一种将使用不同曝光设置拍摄的图像合成为一张看起来像色调映射的高动态范围(HDR)图像的图像的方法.当我们使用相机拍摄照片时,每个颜色通道只有8位来表示场景的亮度.然而,我们周围世界的亮度理论上可以从0(黑色)到几乎无限(直视太阳).因此,傻瓜相机或移动相机根据场景决定曝光设置,以便使用相机的动态范围(0-255值…
目录 1 背景 1.1 什么是高动态范围(HDR)成像? 1.2 高动态范围(HDR)成像如何工作? 2 代码 2.1 运行环境配置 2.2 读取图像和曝光时间 2.3 图像对齐 2.4 恢复相机响应功能 2.5 合并图像 2.6 色调映射 2.7 工程代码 3 参考 在本教程中,我们将学习如何使用不同曝光设置拍摄的多张图像创建高动态范围图像(HDR). 1 背景 1.1 什么是高动态范围(HDR)成像? 大多数数码相机和显示器将彩色图像捕获或显示为24位矩阵.每个颜色通道有8位,一共三个通道,…
文章目录 1 什么是相机标定? 2 图像形成几何学 2.1 设定 2.1.1 世界坐标系 2.1.2 相机坐标系 2.1.3 图像坐标系 2.2 图像形成方法总结 3 基于OpenCV的相机标定原理 3.1 相机标定相关参数 3.2 相机标定的目标 3.3 不同类型的相机标定方法 4 相机标定示例步骤 4.1 使用棋盘格模式定义真实世界坐标 4.2 从不同的角度捕获棋盘的多个图像 4.3 查找棋盘的2D坐标 4.3.1 查找棋盘角点 4.3.2 优化棋盘角点 4.4 校准相机 5 结果与代码 6…