这个是《【图像处理】SFR算法详解1》的后续,本篇主要讲解SFR算法过程。这里主要参考ISO 12233标准所描述的SFR算法过程,详见《ISO 12233-2000 Camera resolution measurement》中6.3 Saptial frequency response。

1、水平SFR及垂直SFR

SFR是通过分析相机拍摄到的图像中一个黑色到白色的斜边而得到的,即下图中所示的红框部分。其中,区域1的垂直斜边用于计算水平SFR,而区域2的水平斜边用于计算垂直SFR。

在后续的算法中,我们讨论的是怎么计算水平SFR,而垂直SFR可以通过旋转90°之后进行跟水平SFR同样的算法获得。

2、算法流程

下图为具体算法流程,该流程与标准中的有所差异,结合了标准中所建议的流程及实际代码实现的流程,原因是标准中的流程图与标准中附录A的程序代码、附录C的算法原理存在差异。

以下为简要过程:(图中对应的RGB,GRAY等表示传输进入当前模块的数据类型。)

1)在相机获取到的RGB图像数据中选择对应垂直斜边ROI,并将其转化为Gray ROI;
2)对得到的Gray ROI数据进行线性化,得到linear ROI数据;
3)计算每一行的centroid,即图像重心,这样能够得到每一行数据的边缘位置。
4)获取到的centroid进行线性回归,得到对应的边缘数据,包括斜率、截距等。
5)获取得到重新定位ROI,根据图像数据及其到边缘的距离,获得ESF。
6)对ESF进行4倍超采样,根据每个数据与它同一行的边缘位置的距离,分别放入4个容器中,获得4xESF。
7)对4xESF进行差分运算,获得LSF。
8)对LSF应用汉明窗,减少图像边缘及噪声影响。
9)进行DFT运算,获得OTF。
10)从OTF的实部获得SFR。

3、代码获取

本系列文章都是主要分析Mitre SFR 1.4源码,具体可以下载查看。

下载地址:Mitre SFR 1.4

【图像处理】SFR算法详解2相关推荐

  1. 【图像处理】SFR算法详解1

    原文地址:http://blog.csdn.net/jaych/article/details/50889664 这几篇文章写的是SFR算法,主要根据相关的概念及其对应的标准和源码,来看看SFR究竟是 ...

  2. SFR算法详解(一)——基础理论

    免责声明:仅供研究讨论,未经确认,相关内容严禁商用,若有错误,欢迎指正. SFR是空间频率响应(Spatial frequency response)的英文缩写,是指一个系统相对于输入的空间频率所输出 ...

  3. Matlab人脸检测算法详解

    这是一个Matlab人脸检测算法详解 前言 人脸检测结果 算法详解 源代码解析 所调用函数解析 bwlabel(BW,n) regionprops rectangle 总结 前言 目前主流的人脸检测与 ...

  4. CenterNet算法详解

    Objects as Points-论文链接-代码链接 目录 1.需求解读 2.CenterNet算法简介 3.CenterNet算法详解 3.1 CenterNet网络结构 3.2 CenterNe ...

  5. SoftPool算法详解

    Refining activation downsampling with SoftPool-论文链接-代码链接 目录 1.需求解读 2.SoftPool算法简介 3.SoftPool算法详解 3.1 ...

  6. SF图像滤镜/美颜/美妆算法详解与实战

    本专栏将结合本热多年相关经验,从传统算法到火热的AI算法,给大家详细讲解目前在PC图像软件.手机图像处理类应用app,以及视频直播等应用类型中,图像视频的滤镜特效,人像美颜美妆特效的算法理论,并结合具 ...

  7. 神经网络算法详解 01:人工神经网络基础

    本文介绍了人工智能的发展历史,基本概念,应用领域:神经元模型,神经元的学习规则以及神经网络工作原理.本系列文章来自阿里云大学人工智能学习路线中的<神经网络概览及神经网络算法详解>课程. 系 ...

  8. 【MATLAB图像处理实用案例详解】目录

    未来一个月的任务主要是GAN生成对抗网络理论部分+代码实战和MATLAB图像处理实用案例详解. 做生成对抗网络主要是因为我的研究方向涉及到这个部分,因此将其作为主要研究内容,但由于研究方向的私密性问题 ...

  9. OpenCV-Python图像处理:仿射变换详解及案例

    仿射变换博文传送门(带星号的为付费专栏文章): *图像仿射变换原理1:齐次坐标来龙去脉详解 *图像仿射变换原理2:矩阵变换.线性变换和图像线性变换矩阵 *图像仿射变换原理3:仿射变换类型及变换矩阵详解 ...

最新文章

  1. 成为GPT-3的甲方,让它来帮你设计网站
  2. mysql大于号是否使用索引
  3. 计算机视觉的发展历史
  4. USTC English Club Note20211108
  5. 添加IFrame导致内存溢出的解决过程(IE浏览器,目前发现了原因,还未解决)...
  6. matlab中计算不等式的解,matlab解不等式
  7. golang - strings
  8. 【英语学习】【WOTD】bathetic 释义/词源/示例
  9. Python数据可视化的四种简易方法 1
  10. maven不引入parent_Maven 如何将本地的项目发布到 Archiva 中
  11. php 判断是否是日文,php正则判断中文韩文的编码的例子
  12. android 自定义 对号,超简单实现Android自定义Toast
  13. 《系统工程理论与实践》Latex 模板使用教程
  14. 计算机usb无法使用,电脑USB接口都不能用的解决办法[多图]
  15. 数据挖掘和知识发现的技术、方法及应用
  16. 神经网络架构搜索——可微分搜索(Latency-DARTS)
  17. 把1,2,3,4,5,6,7,8,9九个数分成三组,各个数字使用一次
  18. 【重磅新闻】罗永浩约战王自如:一场两败俱伤的战役!
  19. 神经网络(Neutral Network)
  20. 丢包、拆包、粘包的原因及解决办法

热门文章

  1. 互联网流量是什么意思_谈谈我理解的流量
  2. XLS和XLSX相同么?
  3. Android Linkage-RecyclerView源码阅读
  4. 页面嵌套iframe怎么调用父页面的方法,子页面回调父页面函数方法
  5. linux 安装 vundle
  6. 新手程序员未来发展计划
  7. Wps Excel 如何时间格式化
  8. 中药药对药组挖掘系统(Java)
  9. PS中按住Alt键或者Ctrl+Alt+G创建剪贴蒙版
  10. 基于规则与统计相结合的互联网突发事件识别研究