从图片估计焦距

我们希望给定一张照片,通过 vision 的算法估计焦距。输入图片 + 用户指定 sensor 大小(默认 36mmx24mm),输出为拍摄使用的镜头焦距。

感觉这是一个可能能够使用 machine learning 来求解的问题,大量的互联网照片是存在 EXIF 信息的,我们能够抽取一些基本的信息作为 training label。同时我们需要做不少 data cleaning 的事情,比如避免 crop/pano 相片导致错误的 label。当然这个方法也存在一个问题,厂商标注的焦距并不完全诚实,他们或多或少存在误差,然后对焦位置的不同会导致焦距并不与标称吻合(所谓的 focus breathing),比较著名的例子莫过于佳能和尼康各自的 70-200mm/2.8 这个专业性非常强的镜头了,后者在 200mm 端拍摄近处物体的时候很多人发现焦距其实不到 150mm,这样一来会给我们的 label 带来很大的问题。

剩下的问题大概就是如何获得 feature 了,这个感觉和 perspective 有一定的关系,人在判断的时候会根据物体的相对大小来做判断,但是这也意味着需要很多的先验知识,而程序很显然不具备这些知识。不知道通过一个 learning system 是否能够让它获得这些知识。

应用嘛,我发现对转接镜头或者一些没有电子接口的镜头可以提供自动的焦端估计,然后在图片处理程序(如 LR、PS)里面就可以自动的标识信息,如果准确率高的话就能自动的提供 lens profile matching。

当然,这个问题延伸一下是甚至判断镜头的型号,通过镜头产生的 aberration、distortion 和 bokeh 来反向判断镜头的厂商、型号什么的。这个可以作为老婆专业对口的面试题了,哇哈哈

Advertisements
从图片估计焦距

一个有关“从图片估计焦距”的想法

  1. hxtang 说:

    我深深怀疑精度能有多少,鉴于换个focus setting都能改magnification,perceptually无法和换focal length区分。lens profile matching这种我觉得要弄到类似焦段的类似镜头也能搞,太难了。

    anyway:
    一个又复杂又土的办法:建一个bounding box image -> object size的regression model
    一个又简单又土的办法:建一个image layout -> focal length的model
    现在的流行:end to end,直接上CNN,效果不好就是参数没调好或者data不够多.
    更加流行的:搞个时序的DNN,把前后几张可能同一个镜头拍的照片gather起来。是的我在搞笑。

    你真觉得出这种paper有任何意义吗。

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s