最近从一个朋友那里看到了一些基恩士的资料,本来是想看下那个比较有特色的浓淡补正滤波器的(因为名字叫Shading Correction Filter,翻译过来的意思有点搞笑),不过看到起相关文档的附近有一个也比价有意思的功能,如下面的截图所示:

  左侧有个叫Removing BackGround Information的算法,看测试图片,他能够把背景的纹理去除,然后只留下一些细小的线条特征。在我的已经试下的算法里,也确实有一个菜单叫做 Remove BackGruond,尝试利用那个算法对这个图像进行处理,可以得到如下所示图像:

       

  结果也相当不错。

在基恩士里这个功能的结果大概如下图所示:

  他把这个功能的名字翻译为实时差分,感觉有点无语。

  我也在想基恩士是如何实现的呢,其实基恩士也算开放,他在我第一个贴图里提供了一份中间图像,而且下部还说明是使用了膨胀和收缩后得到的中间结果。

在上图这个界面中,可以看到这个功能有明暗抽取、抽取大小、处理方向等参数,通过这些参数我觉得就可以大概的猜测出函数的内部使用了哪些功能,比如明暗 应该就是决定了膨胀和收缩的前后顺序, 抽取大小其文档有说每次递增2,很明显就是收缩或膨胀的半径的意思(半径增加1,直径增加2)。处理方向不用想就是指单独水平、垂直或者两者均膨胀或收缩。 有了这些猜测,就可以大胆的去尝试了。下面是我对这个算法的尝试结果:

  

  就是按照明暗不同,执行收缩和膨胀,然后和原图求差异,注意如果是提取Dark,最后在反色下。

  这个结果和基恩士是比较接近的,只是对比度有所不同。

作为对比,我们还那这个图,但是我们抽取明部,然后抽取大小设置为25,相当于半径12,基恩士和我的比较结果如下所示:

    

  除了对比不太一样外,基本差不多。

  另外,这个算法比我们原来的去除背景对光照不均匀图像的处理效果要好,如下所示:

     

          原图                                 早期的Remove BackGround算法                                      基恩士的这个算法

  下面还是起来看下浓淡补正算法了。

  本文Demo下载地址:  https://files.cnblogs.com/files/Imageshop/SSE_Optimization_Demo.rar,位于Detection-》Auxliary Enhance-》Image Extraction。里面的所有算法都是基于SSE实现的。

如果想时刻关注本人的最新文章,也可关注公众号:

最新文章

  1. 怎么理解Android版本兼容???
  2. mysql 服务无法启动 服务没有报告任何错误
  3. 改变edittext边框颜色
  4. 【Todo】Java要学的一些比较好的框架和系统
  5. Nginx安全配置
  6. Linux 安装字体
  7. win7已安装Mysql 开机自启动
  8. iOS 使用矢量图
  9. Discuz x 转码要记
  10. Spring框架xml配置中属性ref与value的区别
  11. centos7 安装部署zabbix
  12. Shell - 简明Shell入门
  13. hosts 文件
  14. 【python】logging记录traceback
  15. java②
  16. 对比深度学习十大框架:TensorFlow 并非最好?
  17. bootstrap collapse 无法收回
  18. 【转】Linux下的文本dos格式转Unix格式,去除^M符号
  19. Charles 3断点篡改数据
  20. HTML:target=_blank

热门文章

  1. python并发——生产者消费者信号量实现
  2. linux磁盘之分区类型id
  3. java连接mysql8.0.28数据库实例
  4. 整理display:none;和visibility:hidden;和overflow:hidden;的区别
  5. 解决Mapper.xml文件中sql标签第一个字段报错
  6. 基于Arcgis Engine 10.2(C#)+PostgreSQL 11(Postgis 3)+pgRouting 3.0实现使用数据库进行路径规划
  7. Bugku CTF练习题---MISC---telnet
  8. MeteoInfo-Java解析与绘图教程(八)_java解析卫星FY-4A一级产品文件(HDF举例)
  9. [题解] [AGC022E] Median Replace
  10. HTML语言的简要学习