zoukankan      html  css  js  c++  java
  • 图像质量评估论文 | Deep-IQA | IEEETIP2018


    主题列表:juejin, github, smartblue, cyanosis, channing-cyan, fancy, hydrogen, condensed-night-purple, greenwillow, v-green, vue-pro, healer-readable, mk-cute, jzman, geek-black, awesome-green, qklhk-chocolate

    贡献主题:https://github.com/xitu/juejin-markdown-themes

    theme: juejin
    highlight:

    文章来自:同作者微信公众号【机器学习炼丹术】~

    0 综述

    这一篇文章和上一篇的rank-IQA感觉都是不错的处理NR-IQA任务的框架,让我们好好学一学这一篇文章中的精髓。

    这一篇文章的related work列举了很多之前的NR-IQA的模型:

    • 【18】
      • DIIVINE:先识别图像失真的类型,然后选择对应类型的回归模型得到具体质量分数;
    • 【20】
      • BRISQUE:利用非对称广义高斯分布在空间域对图像进行建模,模型特征是空间邻域的差值;
    • 【21】
      • NIQE:利用多元高斯模型提取特征,然后利用无监督的方法把他们和质量分布结合起来;
    • 【22】
      • FRIQUEE:把人工提取的特征图输入到4层的深度置信网络中,输出特征向量,利用SVM分类;
    • 【24】
      • CORNIA:最先使用纯数据驱动解决NR-IQA问题的模型之一,使用k-mean聚类处理亮度和对比度被标准化的图片patch,然后从数据中抽取软编码距离来预测质量分数;
    • 【28】
      • BIECOM:第一步用标准话的图片patch经过CNN估计出一个本地质量分数(这个模型是使用现有的FR数据集预训练),然后在把分数的均值和方差作为特征回顾分数;

    不说了,看了半天很多都是很老的人工特征的方法,不太行不太行。

    1 细节

    1.1 FR-IQA

    论文中也是使用了和上一篇文章rank-IQA一样的模型,孪生网络saimese net,论文中先提出了FR-IQA的模型框架:

    在这个框架中,图片是被patch称32x32的大小,然后feature extractor使用的是VGG19,包含5个maxpool层,也就是说,经过features extractor后,特征会变成(512,1,1)这样的shape。

    对于FR-IQA问题,reference patch和distorted patch经过feature extractor得到两个512的向量,然后在fusion阶段使用concat拼接在一起,除了这两个,还把两个特征向量的差值也一同拼接进来,显式的把两个特征的区别也作为特征了,总之是这个样子的:(concat(f_r,f_d,f_r-f_d))

    在fusion features vector后面有两个部分,一个是回归,一个是weights;关于如何从很多的patches中得到整个图片的质量分数,作者给出了两个方法: 这个patch是从图像中无重叠的采样

    1. 简单的平均。

    对于这种平均的方法,所有patch对于整个图片的影响是相同的,所以损失函数也定位MAE:

    1. 加权平均。
      如上图的结构,对特征进行融合之后,进行回归,输出一个patch的质量分数之后,还要在另外一个分支输出这个patch在整个图片中的权重分数。权重参数保证是大于0的。

    1.2 NR-IQA


    就是单纯的把reference去掉,然后不做特征融合。

    2 总结

    这是一种利用CNN来处理质量评估的一个基本框架和思路。作为入门学习是比较好的一个框架。

  • 相关阅读:
    AQS的子类在各个同步工具类中的使用情况
    SpringBoot RabbitMQ 延迟队列代码实现
    Java线程状态、线程start方法源码、多线程、Java线程池、如何停止一个线程
    Java内存模型,为啥线程要有自己的本地内存,CPU高速缓存
    Java内存模型中volatile关键字的作用
    Java内存模型、JVM内存结构和Java对象模型
    搞定springboot项目连接远程服务器上kafka遇到的坑以及完整的例子
    MongoDB导出与导入远程Linux服务器上的数据
    DeferredResult使用方式和场景
    【IT笔试面试题整理】二叉树中和为某一值的路径--从根到叶子节点
  • 原文地址:https://www.cnblogs.com/PythonLearner/p/14274764.html
Copyright © 2011-2022 走看看