合并povray的任意大小的部分图像

时间:2010-11-28 19:23:01

标签: image-processing povray

开始情况:

  

使用povray我创建一个场景的4个部分图像。

povray +SR1 +ER200 +SC0 +EC200 +W400 +H400 +OPART1 povray.pov
povray +SR1 +ER200 +SC201 +EC400 +W400 +H400 +OPART11 povray.pov
povray +SR201 +ER400 +SC0 +EC200 +W400 +H400 +OPART2 povray.pov
povray +SR201 +ER400 +SC201 +EC400 +W400 +H400 +OPART22 povray.pov

要解决的问题:

  • 以编程方式合并4个图像。

需要考虑的事项:

  • 大多数部分图像不是有效图像,无法打开。例如,可以打开第一个部分图像,显示一个矩形,图像位于左上角,其他所有图像都是黑色。但其余图像仅包含有关其区域的信息。我们可以说那些图像已经坏了。
  • 输出格式设置为+ F,可以是PPM,PNG,Uncompressed和Compressed Targa。有效的解决方案可以使用任何这些格式。
  • 专注于如何合并图像。你知道每张部分图像都有的矩形。

已尝试过的事情:

  • 按照http://povray.tashcorp.net/tutorials/qd_multicpu_render/中的说明将图像与Tail连接。它仅在宽度轴上完成部分图像时才有效,即如果PART1是一组线,PART2是另一组线......并且没有列分割。但我们有专栏师。
  • 使用ImageMagick。它无法打开部分图像。它说它们坏了。

1 个答案:

答案 0 :(得分:0)

我发现了如何实现这一目标。

您需要修补Povray,以便保存有关PNG文件偏移量的信息。

这是补丁。 https://gist.github.com/721862

您需要下载povray的来源并应用补丁。要应用补丁,请将补丁文件保存在povray-3.6.1 / source / patch.patch中,然后:

cp patch.patch povray-3.6.1/source/
cd povray-3.6.1/source/
patch png_pov.cpp patch.patch