2014-02-27 46 views
2

我正在尝试开发物体检测算法。我打算比较两张不同焦距的图像。一张正确对焦于对象的图像和一张正确对焦于背景的图像。比较2幅图像的焦点

通过阅读autofocus algorithm。我认为它可以用对比度检测被动自动对焦算法来完成。它在传感器上的光强度上工作。

但我不知道,从图像文件的光强度值具有相同的值,从传感器。 (它不是RAW图像文件,JPEG图像)。jpeg图像中的光强度值是否与传感器上的相同?我可以用它来检测对比度检测的焦点正确性吗?有没有更好的方法来检测哪个区域的图像正确对焦在图像上?

+1

能否请您上传的样本图像? – G453

回答

0

我试图处理这些图像,我看到了一些进展。这是我使用opencv:

enter image description here

你或许可以尝试匹配,并从matchTemplate()原始灰度图像减去使用翻译这些图片;然后使用结果的凸包作为grab cut的初始化蒙版并插入彩色图像。如果你不熟悉抓取,请删除我对这个question的回答。

但可能是一个更简单的方法也可以在这里工作。您可以尝试将较强的blur应用于渐变图像,而不是精确匹配,并查看在这种情况下的差异。下面的图片展示了我在二元掩模中改变区别的想法。

enter image description here enter image description here

+0

不幸的是,当焦点发生变化时,对象将会移动,那么我们无法对它进行匹配和比较。 可能通过比较这些第一个结果的亮度来完成某件事。我不确定何时。但是当我有时间尝试时,我会再次更新结果。 – hisoft

+0

可能并不精确,但最后两张图像可以很好地区分背景模糊和前景。 – Vlad

0

这将有助于看到您的图像。它我正确地理解你,你尝试使用焦点(或模糊)提示来分离背景和前景。图像中的对比度取决于焦点,但它也取决于目标的对比度,其中也是。所以如果目标是云,你永远不会得到锋利的边缘或高对比度。最后,使用小压缩的jpeg图像不应该影响算法的关键属性。

我会尝试在一行中的所有可能的聚焦程度来得到一些图像,然后生成对比的图表焦距(甚至更好的对焦距离)的函数。无论物体本身的对比度如何,此图表中的峰值都会为您提供与物体的距离。但是,请注意,这种视觉线索的准确性随着观看距离而急剧下降。

这是我希望你能得到测量的绝对gradient之时,在一个小窗口:

enter image description here

为你的下一步将是那些在重点与领域区域进行组合,即图中没有特定峰值的纯色,但不属于同一物体。有时,获得聚焦区域的convex hull可以帮助查明物体的原始边界。

+0

图像看起来像这样。 [对象聚焦](https://gvupyg.dm1.livefilestore.com/y2pvJenhYNIUlQyFHSH_MawpX8CVpE09FW9y5MS4weSl3gvwYWixNiGlczwJHh-w_utaBwzI8WH5XKAcQtQ-fk1NATALcMjDOW-PjmgJORn8OM/WP_20140301_12_54_02_Pro.jpg?psid=1) 和[背景聚焦](HTTPS://gvupyg.dm2301 .livefilestore.com/y2p7iLR9pFCcHm5aE7G7xDpZ0F91wlN8jj5qSpDHQeLsNVTcu4Potd8Uf7UIo81nDfxBBJK4yGOKVhSlD6ZWMcs5_NwTcsM2OEeWHrE9KowCKU/WP_20140301_12_54_12_Pro.jpg?PSID = 1) 你的理解是正确。在这个示例图像中,我想知道聚焦对象(罐子)和背景的区域。 – hisoft

+0

这意味着我必须将其与所有区域进行比较,以了解哪个区域具有正确的焦点,哪个区域不是? – hisoft

+0

我加载了您的图片并进行了比较。不幸的是,他们在重新对焦过程中发生了偏移,所以我无法减去它们的渐变以找到更加集中的区域。会有更多的想法/结果回到你身边。 – Vlad