创建从2D图像的3D效果 [英] Creating a 3D effect from a 2D image

查看:164
本文介绍了创建从2D图像的3D效果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个随机的2D图像。我希望能够present的3D图像。这并不一定是非常详细的,即使图像被强行分成层就像从一本儿童读物弹出一个缺口。

I have a random 2D image. I would like to be able to present the image in 3D. This doesn't have to be very detailed, even if the image were arbitrarily broken into layers like a pop-up cutout from a children's book.

这样做的目的是,给定的图像看起来正常时直接查看,但如果观众要移动/倾斜左,右,上,下​​会有一个3D效果。

The goal would be that a given image would look normal when directly viewed but that if a viewer were to move/tilt left, right, up, down there would be a 3d effect.

这是相似但不完全相同的,如下这个问题: <一href="http://stackoverflow.com/questions/4720857/how-to-create-3d-streoscopic-image-using-matlab-with-image-tool">How利用Matlab与图像的工具来创建3D图像streoscopic?

This is similar but not exactly the same as this question here: How to Create 3D streoscopic image using Matlab with image tool?

这是完善的过杀: http://make3d.cs.cornell.edu/

这可能是在正确的轨道: http://www.imagemagick.org/Usage/distorts/#perspective

And this is probably on the right track: http://www.imagemagick.org/Usage/distorts/#perspective

我的理想的实现将与ImageMagick的取一个自动化的PHP脚本被送到图像并吐出来,结果是(的顺序preference 的):

My ideal implementation would be a automated PHP script with ImageMagick take is fed an image and spits out as a result either (in order of preference):

  1. 图片重新presenting每一层,从 最接近最深(接近 孩子的立体书层的比喻)
  2. 5图像​​重新presenting该意见 (直接,左,右,上,下​​)
  1. Images representing each layer, from nearest to deepest (closer to the childs pop-up book layer analogy)
  2. 5 images representing the said views (direct, left, right, top, bottom)

这已经做过(或以上的理想的实施),或有没有人知道该怎么做的所有或部分的呢?

Has this been done (either of the above ideal implementations), or does anyone know how to do all, or part, of this?

推荐答案

至于你的问题的第一部分而言,这听起来像你的理想的实施的 http://make3d.cs.cornell.edu/ ,不同之处在于:

As far as the first part of your question is concerned, it sounds like your ideal implementation is http://make3d.cs.cornell.edu/, except that:

  • 您想更简单(从固定的角度,而不是一个演练返回图片)
  • 您有ImageMagick的希望和PHP

我觉得最后一个限制是不现实的,因为有数学和计算机视觉相当数量的落后这类问题的。 ImageMagick的将帮助您喜欢仿射变换较低的水平,图像处理任务,但它并没有真正提供象三维图像重建所需的更高级别的计算机视觉功能。

I think that last restriction is unrealistic because there's a fair amount of maths and computer vision behind this kind of problem. Imagemagick will help you with lower level-image processing tasks like affine transforms, but it doesn't really provide the required higher-level computer vision functionality like 3D image reconstruction.

所以,我的建议是尝试解决这个限制莫名其妙。如果您使用的是更合适的工具(如C ++和OpenCV,例如,或Matlab,作为Make3D家伙一样)实施的办法,那么你可以用在一个CGI应用程序让你的PHP脚本可以访问它。康奈尔大学(Make3D的作者)也有类似的事情去而回,但看起来他们没有这样做了。

So my advice would be to try and work around that restriction somehow. If you implement the approach using more suitable tools (like C++ and OpenCV, for example, or Matlab, as the Make3D guys did), then you can wrap that in a CGI application so your PHP scripts can access it. Cornell (the authors of Make3D) had a similar thing going a while back, but it looks like they're not doing it any more.

对于你的问题的第二部分,后面的你想要做什么理论已相当精心研究。请参见此处的深度估计文件清单。 这里是什么东西看起来像源。

For the second part of your question, the theory behind what you want to do has been fairly well-researched. See here for a list of depth estimation papers. Here is what things look like in source.

这篇关于创建从2D图像的3D效果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆